Files
shanxia2.0/docs/sql/pl_tables.sql
T
2026-06-29 11:15:39 +08:00

852 lines
48 KiB
SQL
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
-- =============================================================================
-- 运输计划管理模块 DDL
-- 生成时间: 2026-06-11
-- 说明: pl_ 前缀,所有计划相关表
-- =============================================================================
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- -----------------------------------------------------------------------------
-- 1. 基础数据:承运商、车辆、人员、证书
-- -----------------------------------------------------------------------------
-- ----------------------------
-- Table structure for pl_carrier (承运商表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_carrier`;
CREATE TABLE `pl_carrier` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`carrier_name` varchar(200) NOT NULL COMMENT '承运商名称',
`contact_name` varchar(100) DEFAULT NULL COMMENT '联系人',
`contact_phone` varchar(32) DEFAULT NULL COMMENT '联系电话',
`status` char(1) NOT NULL DEFAULT '1' COMMENT '合作状态 1-合作中 0-已终止',
`business_license_urls` varchar(2000) DEFAULT NULL COMMENT '营业执照附件URL,逗号分隔',
`road_transport_license_urls` varchar(2000) DEFAULT NULL COMMENT '道路经营许可证附件URL,逗号分隔',
`transport_agreement_urls` varchar(2000) DEFAULT NULL COMMENT '运输协议附件URL,逗号分隔',
`transport_agreement_expire_date` date DEFAULT NULL COMMENT '运输协议有效期',
`audit_status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '审核状态 pending-待审核 approved-已通过 rejected-已驳回',
`audit_by` varchar(64) DEFAULT NULL COMMENT '审核人id',
`audit_time` datetime DEFAULT NULL COMMENT '审核时间',
`audit_remark` varchar(512) DEFAULT NULL COMMENT '审核备注(驳回原因等)',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_status` (`status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='承运商表';
-- ----------------------------
-- Table structure for pl_vehicle (车辆表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle`;
CREATE TABLE `pl_vehicle` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`vehicle_type` varchar(20) NOT NULL COMMENT '车辆类型 self-自有 carrier-承运商',
`carrier_id` varchar(64) DEFAULT NULL COMMENT '承运商ID(类型为承运商时必填)',
`carrier_name` varchar(200) DEFAULT NULL COMMENT '承运商名称(冗余)',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`load_capacity` decimal(10,2) DEFAULT NULL COMMENT '载重(吨)',
`vehicle_status` varchar(20) NOT NULL DEFAULT 'available' COMMENT '车辆状态 available-可用 maintaining-维修中 scrapped-报废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_license_plate` (`license_plate`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_vehicle_type` (`vehicle_type`),
KEY `idx_carrier_id` (`carrier_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆表';
-- ----------------------------
-- Table structure for pl_personnel (人员表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_personnel`;
CREATE TABLE `pl_personnel` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`personnel_name` varchar(100) NOT NULL COMMENT '姓名',
`phone_no` varchar(32) DEFAULT NULL COMMENT '手机号(非必填)',
`age` int(11) DEFAULT NULL COMMENT '年龄',
`id_card_no` varchar(32) DEFAULT NULL COMMENT '身份证号',
`status` char(1) NOT NULL DEFAULT '1' COMMENT '状态 1-在职 0-停用',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_phone` (`phone_no`),
KEY `idx_personnel_name` (`personnel_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输计划-人员表';
-- ----------------------------
-- Table structure for pl_cert (证书表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_cert`;
CREATE TABLE `pl_cert` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`owner_type` varchar(20) NOT NULL COMMENT '归属类型 vehicle-车辆 personnel-人员',
`owner_id` varchar(64) NOT NULL COMMENT '归属主体ID',
`vehicle_part` varchar(20) DEFAULT NULL COMMENT '车辆部位 head-主车 trailer-挂车,人员证书为空',
`cert_name` varchar(100) NOT NULL COMMENT '证书名称',
`cert_no` varchar(64) DEFAULT NULL COMMENT '证号',
`expire_date` date DEFAULT NULL COMMENT '有效期',
`remind_days` int(11) NOT NULL DEFAULT 30 COMMENT '提前提醒天数',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL(逗号分隔)',
`status` varchar(20) NOT NULL DEFAULT 'valid' COMMENT '状态 valid-有效 expired-已过期 revoked-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_owner` (`owner_type`, `owner_id`),
KEY `idx_expire_date` (`expire_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输计划-证书表';
-- ----------------------------
-- Table structure for pl_vehicle_personnel (车辆-人员关联表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_personnel`;
CREATE TABLE `pl_vehicle_personnel` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`vehicle_id` varchar(64) NOT NULL COMMENT '车辆ID',
`personnel_id` varchar(64) NOT NULL COMMENT '人员ID',
`role` varchar(20) NOT NULL DEFAULT 'driver' COMMENT '角色 driver-司机 escort-押运员',
`is_default` smallint(6) NOT NULL DEFAULT 0 COMMENT '是否默认司机 0-否 1-是',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '关联备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_vehicle_id` (`vehicle_id`),
KEY `idx_personnel_id` (`personnel_id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_vehicle_role` (`vehicle_id`, `role`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆-人员关联表';
-- -----------------------------------------------------------------------------
-- 2. 计划管理:计划主表、产品明细、变更记录
-- -----------------------------------------------------------------------------
-- ----------------------------
-- Table structure for pl_plan (计划主表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_plan`;
CREATE TABLE `pl_plan` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`plan_no` varchar(32) NOT NULL COMMENT '计划订单编号 SXDDHYYYYMMDD######',
`plan_date` date NOT NULL COMMENT '计划日期',
`belongs_company` varchar(20) NOT NULL COMMENT '归属公司 shanxia-安庆山峡 yundong-安徽云栋',
`plan_type` varchar(20) NOT NULL COMMENT '单据类型 direct-直销单 inbound-入库单 outbound-出库单',
`follow_status` varchar(30) NOT NULL DEFAULT 'draft' COMMENT '跟进状态',
`transport_status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '运输安排状态 pending-待安排 arranged-已安排',
`archive_status` varchar(20) NOT NULL DEFAULT 'unarchived' COMMENT '归档状态 unarchived-未归档 archived-已归档',
`complete_status` varchar(10) NOT NULL DEFAULT 'no' COMMENT '完成状态 yes-是 no-否',
`contract_id` varchar(64) DEFAULT NULL COMMENT 'CRM合同ID',
`contract_no` varchar(50) DEFAULT NULL COMMENT '合同编号',
`supplier_id` varchar(64) DEFAULT NULL COMMENT '供应商ID',
`supplier_name` varchar(200) DEFAULT NULL COMMENT '供应商名称',
`destination_id` varchar(64) DEFAULT NULL COMMENT '目的地ID',
`destination_name` varchar(200) DEFAULT NULL COMMENT '目的地名称',
`customer_id` varchar(64) DEFAULT NULL COMMENT '客户ID',
`customer_name` varchar(200) DEFAULT NULL COMMENT '客户名称',
`contact_name` varchar(100) DEFAULT NULL COMMENT '联系人',
`contact_phone` varchar(32) DEFAULT NULL COMMENT '联系电话',
`party_a` varchar(200) DEFAULT NULL COMMENT '甲方',
`party_b` varchar(200) DEFAULT NULL COMMENT '乙方',
`contract_start_date` date DEFAULT NULL COMMENT '合同开始日期',
`contract_end_date` date DEFAULT NULL COMMENT '合同结束日期',
`delivery_method` varchar(20) DEFAULT NULL COMMENT '送货方式 self_pick-山峡自提 one_ticket-一票制 customer_pick-客户自提',
`settlement_method` varchar(50) DEFAULT NULL COMMENT '结算方式',
`has_freight` smallint(6) NOT NULL DEFAULT 0 COMMENT '是否有运输费用 0-否 1-是',
`transport_id` varchar(64) DEFAULT NULL COMMENT '运输ID',
`transport_no` varchar(32) DEFAULT NULL COMMENT '运输编号',
`vehicle_id` varchar(64) DEFAULT NULL COMMENT '车辆ID',
`license_plate` varchar(20) DEFAULT NULL COMMENT '车牌号',
`driver_id` varchar(64) DEFAULT NULL COMMENT '司机ID',
`driver_name` varchar(100) DEFAULT NULL COMMENT '司机姓名',
`total_amount` decimal(15,2) NOT NULL DEFAULT 0.00 COMMENT '计划总金额',
`freight_amount` decimal(15,2) NOT NULL DEFAULT 0.00 COMMENT '运费合计',
`notify_message` text COMMENT '通知信息(标准模板)',
`follow_user_id` varchar(64) DEFAULT NULL COMMENT '跟进人ID',
`follow_user_name` varchar(100) DEFAULT NULL COMMENT '跟进人姓名',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_plan_no` (`plan_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_plan_type` (`plan_type`),
KEY `idx_follow_status` (`follow_status`),
KEY `idx_plan_date` (`plan_date`),
KEY `idx_contract_id` (`contract_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计划主表';
-- ----------------------------
-- Table structure for pl_plan_product (计划产品明细表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_plan_product`;
CREATE TABLE `pl_plan_product` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`plan_id` varchar(64) NOT NULL COMMENT '计划ID',
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
`product_no` varchar(50) NOT NULL COMMENT '产品编号',
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
`model` varchar(100) DEFAULT NULL COMMENT '规格型号',
`unit` varchar(20) NOT NULL DEFAULT '吨' COMMENT '单位',
`is_explosive` smallint(6) NOT NULL DEFAULT 0 COMMENT '是否易制爆 0-否 1-是',
`is_toxic` smallint(6) NOT NULL DEFAULT 0 COMMENT '是否易制毒 0-否 1-是',
`purchase_cert_url` varchar(500) DEFAULT NULL COMMENT '购买证URL',
`transport_cert_url` varchar(500) DEFAULT NULL COMMENT '运输证URL',
`inbound_estimate_qty` decimal(15,3) DEFAULT NULL COMMENT '入库预估数',
`inbound_qty` decimal(15,3) DEFAULT NULL COMMENT '入库数',
`inbound_price` decimal(15,4) DEFAULT NULL COMMENT '入库价',
`inbound_amount` decimal(15,2) DEFAULT NULL COMMENT '入库金额',
`outbound_estimate_qty` decimal(15,3) DEFAULT NULL COMMENT '出库预估数',
`outbound_qty` decimal(15,3) DEFAULT NULL COMMENT '出库数',
`outbound_price` decimal(15,4) DEFAULT NULL COMMENT '出库单价',
`outbound_amount` decimal(15,2) DEFAULT NULL COMMENT '出库金额',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_plan_id` (`plan_id`),
KEY `idx_product_id` (`product_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计划产品明细表';
-- ----------------------------
-- Table structure for pl_plan_change (计划变更记录表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_plan_change`;
CREATE TABLE `pl_plan_change` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`plan_id` varchar(64) NOT NULL COMMENT '计划ID',
`change_type` varchar(30) NOT NULL COMMENT '变更类型',
`change_content` text COMMENT '变更内容',
`change_user_id` varchar(64) DEFAULT NULL COMMENT '变更人ID',
`change_user_name` varchar(100) DEFAULT NULL COMMENT '变更人姓名',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_plan_id` (`plan_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计划变更记录表';
-- -----------------------------------------------------------------------------
-- 3. 运输管理:运输表、审批记录
-- -----------------------------------------------------------------------------
-- ----------------------------
-- Table structure for pl_transport (运输表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_transport`;
CREATE TABLE `pl_transport` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`transport_no` varchar(32) NOT NULL COMMENT '运输编号 SXYS######',
`vehicle_id` varchar(64) DEFAULT NULL COMMENT '车辆ID',
`license_plate` varchar(20) DEFAULT NULL COMMENT '车牌号',
`driver_id` varchar(64) DEFAULT NULL COMMENT '司机ID',
`driver_name` varchar(100) DEFAULT NULL COMMENT '司机姓名',
`driver_phone` varchar(32) DEFAULT NULL COMMENT '司机电话',
`carrier_id` varchar(64) DEFAULT NULL COMMENT '承运商ID',
`carrier_name` varchar(200) DEFAULT NULL COMMENT '承运商名称',
`transport_medium` varchar(100) DEFAULT NULL COMMENT '运输介质',
`start_point` varchar(200) DEFAULT NULL COMMENT '运输起点',
`end_point` varchar(200) DEFAULT NULL COMMENT '运输终点',
`distance_km` decimal(10,2) DEFAULT NULL COMMENT '运输公里数',
`unit` varchar(20) DEFAULT NULL COMMENT '计量单位 吨/趟',
`freight_price` decimal(15,4) DEFAULT NULL COMMENT '运输单价',
`freight_amount` decimal(15,2) NOT NULL DEFAULT 0.00 COMMENT '运输费用',
`freight_type` varchar(20) NOT NULL DEFAULT 'by_weight' COMMENT '运费计算方式 by_weight-按重量 by_trip-按趟次',
`has_invoice` smallint(6) NOT NULL DEFAULT 0 COMMENT '是否开票 0-否 1-是',
`qr_code` varchar(500) DEFAULT NULL COMMENT '二维码内容',
`qr_expire_date` date DEFAULT NULL COMMENT '二维码有效期',
`driver_access_token` varchar(64) DEFAULT NULL COMMENT '司机免登录访问令牌',
`transport_status` varchar(20) NOT NULL DEFAULT 'draft' COMMENT '运输状态 draft-草稿 pending-待执行 executing-执行中 completed-已完成 cancelled-已取消',
`approval_status` varchar(20) NOT NULL DEFAULT 'none' COMMENT '审批状态 none-无需 pending-审批中 approved-已通过 rejected-已拒绝',
`feedback_time` datetime DEFAULT NULL COMMENT '回传时间',
`feedback_qty` decimal(15,3) DEFAULT NULL COMMENT '回传数量',
`feedback_images` text COMMENT '回传图片URLs(JSON数组)',
`feedback_remark` varchar(500) DEFAULT NULL COMMENT '回传备注',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_transport_no` (`transport_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_transport_status` (`transport_status`),
KEY `idx_vehicle_id` (`vehicle_id`),
KEY `idx_driver_id` (`driver_id`),
UNIQUE KEY `uk_pl_transport_driver_token` (`driver_access_token`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输表';
-- ----------------------------
-- Table structure for pl_transport_db_link (运输-地磅出入库关联)
-- ----------------------------
DROP TABLE IF EXISTS `pl_transport_db_link`;
CREATE TABLE `pl_transport_db_link` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`transport_id` varchar(64) NOT NULL COMMENT '运输单ID',
`plan_id` varchar(64) NOT NULL COMMENT '运输计划ID',
`plan_product_id` varchar(64) NOT NULL COMMENT '计划产品行ID',
`db_purchase_plan_id` varchar(64) NOT NULL COMMENT '地磅计划ID',
`db_inventory_id` varchar(64) NOT NULL COMMENT '出入库单ID',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_pl_tdb_link_transport` (`transport_id`),
KEY `idx_pl_tdb_link_plan` (`plan_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输-地磅出入库关联';
-- ----------------------------
-- Table structure for pl_plan_transport (计划-运输关联表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_plan_transport`;
CREATE TABLE `pl_plan_transport` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`plan_id` varchar(64) NOT NULL COMMENT '计划ID',
`transport_id` varchar(64) NOT NULL COMMENT '运输ID',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_plan_id` (`plan_id`),
KEY `idx_transport_id` (`transport_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='计划-运输关联表';
-- ----------------------------
-- Table structure for pl_transport_approval (运输审批记录表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_transport_approval`;
CREATE TABLE `pl_transport_approval` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`transport_id` varchar(64) NOT NULL COMMENT '运输ID',
`approver_id` varchar(64) NOT NULL COMMENT '审批人ID',
`approver_name` varchar(100) NOT NULL COMMENT '审批人姓名',
`approval_order` int(11) NOT NULL COMMENT '审批顺序',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '审批状态 pending-待审批 approved-已通过 rejected-已拒绝',
`comment` varchar(500) DEFAULT NULL COMMENT '审批意见',
`approval_time` datetime DEFAULT NULL COMMENT '审批时间',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_transport_id` (`transport_id`),
KEY `idx_approver_id` (`approver_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运输审批记录表';
-- -----------------------------------------------------------------------------
-- 4. 运费结算
-- -----------------------------------------------------------------------------
-- ----------------------------
-- Table structure for pl_freight_settlement (运费结算表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_freight_settlement`;
CREATE TABLE `pl_freight_settlement` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`settlement_no` varchar(32) NOT NULL COMMENT '结算单编号',
`total_freight` decimal(15,2) NOT NULL DEFAULT 0.00 COMMENT '运费合计',
`invoice_amount` decimal(15,2) DEFAULT NULL COMMENT '发票金额',
`invoice_no` varchar(50) DEFAULT NULL COMMENT '发票号',
`invoice_date` date DEFAULT NULL COMMENT '开票日期',
`invoice_attachment_urls` text DEFAULT NULL COMMENT '发票附件URLs,逗号分隔',
`settlement_status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '结算状态 pending-待提交 submitted-已提交 approved-审核通过 confirmed-已确认',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_settlement_no` (`settlement_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_settlement_status` (`settlement_status`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运费结算表';
-- ----------------------------
-- Table structure for pl_freight_settlement_transport (结算单-运输关联表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_freight_settlement_transport`;
CREATE TABLE `pl_freight_settlement_transport` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`settlement_id` varchar(64) NOT NULL COMMENT '结算单ID',
`transport_id` varchar(64) NOT NULL COMMENT '运输ID',
`freight_amount` decimal(15,2) NOT NULL COMMENT '运费金额',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_settlement_id` (`settlement_id`),
KEY `idx_transport_id` (`transport_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='结算单-运输关联表';
-- ----------------------------
-- Table structure for pl_freight_settlement_approval (运费结算审批记录)
-- ----------------------------
DROP TABLE IF EXISTS `pl_freight_settlement_approval`;
CREATE TABLE `pl_freight_settlement_approval` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`settlement_id` varchar(64) NOT NULL COMMENT '结算单ID',
`step` int(11) NOT NULL DEFAULT 1 COMMENT '步骤序号',
`step_name` varchar(50) DEFAULT NULL COMMENT '步骤名称',
`approver_id` varchar(64) NOT NULL COMMENT '审批人ID',
`approver_name` varchar(64) DEFAULT NULL COMMENT '审批人姓名',
`approval_type` varchar(20) NOT NULL DEFAULT 'sequential' COMMENT 'sequential/parallel/or',
`approval_result` varchar(20) NOT NULL DEFAULT 'pending' COMMENT 'pending/approved/rejected/skipped',
`approval_opinion` varchar(500) DEFAULT NULL COMMENT '审批意见',
`approval_time` datetime DEFAULT NULL COMMENT '审批时间',
`is_current` tinyint(4) NOT NULL DEFAULT 0 COMMENT '是否当前节点',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` tinyint(4) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_pl_fsa_settlement` (`settlement_id`, `del_flag`),
KEY `idx_pl_fsa_approver` (`approver_id`, `approval_result`, `is_current`, `del_flag`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='运费结算审批记录';
-- ----------------------------
-- Table structure for pl_remittance_voucher (汇款凭证表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_remittance_voucher`;
CREATE TABLE `pl_remittance_voucher` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`settlement_id` varchar(64) NOT NULL COMMENT '结算单ID',
`voucher_no` varchar(32) DEFAULT NULL COMMENT '凭证编号',
`remittance_date` date DEFAULT NULL COMMENT '汇款日期',
`remittance_amount` decimal(15,2) DEFAULT NULL COMMENT '汇款金额',
`voucher_urls` text COMMENT '凭证文件URLs(JSON数组)',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_settlement_id` (`settlement_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='汇款凭证表';
-- -----------------------------------------------------------------------------
-- 5. 库存管理
-- -----------------------------------------------------------------------------
-- ----------------------------
-- Table structure for pl_inventory (库存表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_inventory`;
CREATE TABLE `pl_inventory` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
`product_no` varchar(50) NOT NULL COMMENT '产品编号',
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
`model` varchar(100) DEFAULT NULL COMMENT '规格型号',
`unit` varchar(20) NOT NULL DEFAULT '吨' COMMENT '单位',
`stock_qty` decimal(15,3) NOT NULL DEFAULT 0.000 COMMENT '库存数量',
`stock_amount` decimal(15,2) NOT NULL DEFAULT 0.00 COMMENT '库存金额',
`low_stock_warning` decimal(15,3) DEFAULT NULL COMMENT '最低库存预警值',
`high_stock_warning` decimal(15,3) DEFAULT NULL COMMENT '最高库存预警值',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
UNIQUE KEY `uk_product_id` (`product_id`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存表';
-- ----------------------------
-- Table structure for pl_inventory_transaction (库存流水表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_inventory_transaction`;
CREATE TABLE `pl_inventory_transaction` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
`transaction_type` varchar(20) NOT NULL COMMENT '事务类型 inbound-入库 outbound-出库',
`plan_id` varchar(64) DEFAULT NULL COMMENT '计划ID',
`plan_no` varchar(32) DEFAULT NULL COMMENT '计划编号',
`qty` decimal(15,3) NOT NULL COMMENT '变动数量(正数入库/负数出库)',
`unit_price` decimal(15,4) NOT NULL COMMENT '单价',
`amount` decimal(15,2) NOT NULL COMMENT '金额',
`stock_after` decimal(15,3) NOT NULL COMMENT '变动后库存',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_product_id` (`product_id`),
KEY `idx_transaction_type` (`transaction_type`),
KEY `idx_plan_id` (`plan_id`),
KEY `idx_create_time` (`create_time`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存流水表';
-- ----------------------------
-- Table structure for pl_inventory_warning (库存预警表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_inventory_warning`;
CREATE TABLE `pl_inventory_warning` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`product_id` varchar(64) NOT NULL COMMENT '产品ID',
`product_name` varchar(200) NOT NULL COMMENT '产品名称',
`warning_type` varchar(20) NOT NULL COMMENT '预警类型 low-低于最低 high-高于最高',
`current_qty` decimal(15,3) NOT NULL COMMENT '当前库存',
`threshold_value` decimal(15,3) NOT NULL COMMENT '阈值',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '状态 pending-待处理 resolved-已处理',
`resolve_time` datetime DEFAULT NULL COMMENT '处理时间',
`resolve_remark` varchar(500) DEFAULT NULL COMMENT '处理备注',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_product_id` (`product_id`),
KEY `idx_warning_type` (`warning_type`),
KEY `idx_status` (`status`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='库存预警表';
-- ----------------------------
-- Table structure for pl_document_reminder (证件到期提醒表)
-- ----------------------------
DROP TABLE IF EXISTS `pl_document_reminder`;
CREATE TABLE `pl_document_reminder` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`cert_id` varchar(64) DEFAULT NULL COMMENT '证书ID',
`owner_type` varchar(20) DEFAULT NULL COMMENT '归属类型 vehicle/personnel',
`owner_id` varchar(64) DEFAULT NULL COMMENT '归属主体ID',
`owner_label` varchar(200) DEFAULT NULL COMMENT '归属展示名(车牌/姓名)',
`driver_id` varchar(64) DEFAULT NULL COMMENT '司机/人员ID(兼容)',
`driver_name` varchar(100) DEFAULT NULL COMMENT '司机/人员姓名(兼容)',
`document_type` varchar(100) NOT NULL COMMENT '证件类型/证书名称',
`document_no` varchar(50) DEFAULT NULL COMMENT '证件号',
`expire_date` date NOT NULL COMMENT '到期日期',
`days_remaining` int(11) NOT NULL COMMENT '剩余天数',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT '状态 pending-待处理 resolved-已处理',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0' COMMENT '租户编号',
`order_num` int(11) DEFAULT NULL COMMENT '排序号',
`remark` varchar(512) DEFAULT NULL COMMENT '备注',
`create_by` varchar(64) DEFAULT NULL COMMENT '创建人id',
`create_dept_id` varchar(64) NOT NULL DEFAULT '' COMMENT '创建人部门ID',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
`update_by` varchar(64) DEFAULT NULL COMMENT '更新人id',
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '更新时间',
`del_flag` smallint(6) NOT NULL DEFAULT 0 COMMENT '删除标记:0-正常 1-已删除',
PRIMARY KEY (`id`),
KEY `idx_cert_id` (`cert_id`),
KEY `idx_driver_id` (`driver_id`),
KEY `idx_document_type` (`document_type`),
KEY `idx_expire_date` (`expire_date`),
KEY `idx_status` (`status`),
KEY `idx_tenant` (`tenant_no`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='证件到期提醒表';
-- ----------------------------
-- Table structure for pl_vehicle_recharge_apply (车辆ETC/加油充值申请)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_recharge_apply`;
CREATE TABLE `pl_vehicle_recharge_apply` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`apply_no` varchar(32) NOT NULL COMMENT '申请单号 SXSQ+YYYYMMDD+6位',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`recharge_type` varchar(20) NOT NULL COMMENT '充值类型 etc-ETC fuel-加油',
`apply_date` date NOT NULL COMMENT '申请日期',
`odometer_km` decimal(10,1) DEFAULT NULL COMMENT '期初公里数',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`applicant_id` varchar(64) NOT NULL COMMENT '申请人用户ID',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT 'pending-待发放 disbursed-已发放 cancelled-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_apply_no` (`apply_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_license_plate` (`license_plate`),
KEY `idx_status` (`status`),
KEY `idx_apply_date` (`apply_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆ETC/加油充值申请';
-- ----------------------------
-- Table structure for pl_vehicle_recharge_record (车辆ETC/加油充值发放登记)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_recharge_record`;
CREATE TABLE `pl_vehicle_recharge_record` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`recharge_order_no` varchar(32) NOT NULL COMMENT '充值订单号 SXCL+YYYYMMDD+6位',
`recharge_date` date NOT NULL COMMENT '充值日期',
`recharge_type` varchar(20) NOT NULL COMMENT '充值类型 etc-ETC fuel-加油',
`card_no` varchar(64) DEFAULT NULL COMMENT '卡号',
`gas_station` varchar(200) DEFAULT NULL COMMENT '加油站/充值渠道',
`amount` decimal(10,2) NOT NULL COMMENT '充值金额(元)',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`apply_id` varchar(64) DEFAULT NULL COMMENT '关联申请单ID',
`license_plate` varchar(20) DEFAULT NULL COMMENT '车牌号冗余',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_recharge_order_no` (`recharge_order_no`),
UNIQUE KEY `uk_apply_id` (`apply_id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_recharge_date` (`recharge_date`),
KEY `idx_license_plate` (`license_plate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆ETC/加油充值发放登记';
-- ----------------------------
-- Table structure for pl_vehicle_maintenance_apply (车辆维保申请)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_maintenance_apply`;
CREATE TABLE `pl_vehicle_maintenance_apply` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`apply_no` varchar(32) NOT NULL COMMENT '申请单号 SXWB+YYYYMMDD+6位',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`applicant_id` varchar(64) NOT NULL COMMENT '申请人用户ID',
`apply_date` date NOT NULL COMMENT '申请时间',
`maintenance_type` varchar(64) NOT NULL COMMENT '维保类型',
`start_date` date NOT NULL COMMENT '维保开始时间',
`expected_pickup_date` date DEFAULT NULL COMMENT '预计取车时间',
`maintenance_content` varchar(1000) DEFAULT NULL COMMENT '维保内容',
`shop_address` varchar(500) DEFAULT NULL COMMENT '维保店铺地址',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT 'pending-待处理 processed-已处理 cancelled-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_apply_no` (`apply_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_license_plate` (`license_plate`),
KEY `idx_status` (`status`),
KEY `idx_apply_date` (`apply_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆维保申请';
-- ----------------------------
-- Table structure for pl_vehicle_maintenance_process (车辆维保处理登记)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_maintenance_process`;
CREATE TABLE `pl_vehicle_maintenance_process` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`process_no` varchar(32) NOT NULL COMMENT '处理单号 SXWC+YYYYMMDD+6位',
`apply_id` varchar(64) DEFAULT NULL COMMENT '关联申请单ID',
`license_plate` varchar(20) DEFAULT NULL COMMENT '车牌号冗余',
`amount` decimal(10,2) DEFAULT NULL COMMENT '金额(元)',
`handler_id` varchar(64) NOT NULL COMMENT '处理人用户ID',
`process_date` date NOT NULL COMMENT '处理时间',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_process_no` (`process_no`),
UNIQUE KEY `uk_apply_id` (`apply_id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_process_date` (`process_date`),
KEY `idx_license_plate` (`license_plate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆维保处理登记';
-- ----------------------------
-- Table structure for pl_vehicle_urea_apply (车辆尿素申请)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_urea_apply`;
CREATE TABLE `pl_vehicle_urea_apply` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`apply_no` varchar(32) NOT NULL COMMENT '申请单号 SXNS+YYYYMMDD+6位',
`license_plate` varchar(20) NOT NULL COMMENT '车牌号',
`applicant_id` varchar(64) NOT NULL COMMENT '申请人用户ID',
`apply_date` date NOT NULL COMMENT '申请时间',
`warehouse_in_date` date NOT NULL COMMENT '入库时间',
`unit` varchar(32) NOT NULL COMMENT '单位',
`quantity` decimal(10,2) NOT NULL COMMENT '入库数',
`apply_amount` decimal(10,2) NOT NULL COMMENT '申请金额(元)',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`status` varchar(20) NOT NULL DEFAULT 'pending' COMMENT 'pending-待发放 disbursed-已发放 cancelled-已作废',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_apply_no` (`apply_no`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_license_plate` (`license_plate`),
KEY `idx_status` (`status`),
KEY `idx_apply_date` (`apply_date`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆尿素申请';
-- ----------------------------
-- Table structure for pl_vehicle_urea_disburse (车辆尿素发放登记)
-- ----------------------------
DROP TABLE IF EXISTS `pl_vehicle_urea_disburse`;
CREATE TABLE `pl_vehicle_urea_disburse` (
`id` varchar(64) NOT NULL COMMENT '主键ID',
`disburse_no` varchar(32) NOT NULL COMMENT '发放单号 SXUF+YYYYMMDD+6位',
`apply_id` varchar(64) DEFAULT NULL COMMENT '关联申请单ID',
`license_plate` varchar(20) DEFAULT NULL COMMENT '车牌号冗余',
`amount` decimal(10,2) NOT NULL COMMENT '发放金额(元)',
`handler_id` varchar(64) NOT NULL COMMENT '处理人用户ID',
`disburse_date` date NOT NULL COMMENT '发放时间',
`attachment_urls` varchar(2000) DEFAULT NULL COMMENT '附件URL,逗号分隔',
`tenant_no` varchar(64) NOT NULL DEFAULT 'shanxia2.0',
`order_num` int(11) DEFAULT NULL,
`remark` varchar(512) DEFAULT NULL,
`create_by` varchar(64) DEFAULT NULL,
`create_dept_id` varchar(64) NOT NULL DEFAULT '',
`create_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
`update_by` varchar(64) DEFAULT NULL,
`update_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`del_flag` smallint(6) NOT NULL DEFAULT 0,
PRIMARY KEY (`id`),
UNIQUE KEY `uk_disburse_no` (`disburse_no`),
UNIQUE KEY `uk_apply_id` (`apply_id`),
KEY `idx_tenant` (`tenant_no`),
KEY `idx_disburse_date` (`disburse_date`),
KEY `idx_license_plate` (`license_plate`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='车辆尿素发放登记';
SET FOREIGN_KEY_CHECKS = 1;
-- =============================================================================
-- DDL 完成
-- 共计 22 张表(含 pl_cert;pl_driver 已由 pl_personnel 替代)
-- =============================================================================