-- ========================================
-- 电子请购单 — 数据库建表脚本
-- 表结构：主表 + 明细表，全部文本字段，不关联任何现有表
-- 对应文档：docs/科仑普请购采购单(1).docx
-- ========================================

-- ----------------------------
-- 主表：请购及采购单
-- ----------------------------
DROP TABLE IF EXISTS `erp_purchase_requisition`;
CREATE TABLE `erp_purchase_requisition` (
  `req_id`                     BIGINT          NOT NULL AUTO_INCREMENT COMMENT '主键',

  -- 头部（请购人填写）
  `req_dept`                   VARCHAR(100)    DEFAULT NULL            COMMENT '请购部门',
  `item_name`                  VARCHAR(200)    DEFAULT NULL            COMMENT '品名',
  `specification`              VARCHAR(200)    DEFAULT NULL            COMMENT '规格',
  `unit`                       VARCHAR(20)     DEFAULT NULL            COMMENT '单位',
  `quantity`                   VARCHAR(50)     DEFAULT NULL            COMMENT '请购量',

  -- 类别与日期
  `category`                   VARCHAR(50)     DEFAULT NULL            COMMENT '类别',
  `required_date`              VARCHAR(50)     DEFAULT NULL            COMMENT '需求日期',

  -- 说明
  `purpose_desc`               VARCHAR(500)    DEFAULT NULL            COMMENT '用途说明',
  `use_dept`                   VARCHAR(100)    DEFAULT NULL            COMMENT '使用部门',

  -- 采购处理（采购单位填写）
  `inspection_condition`       VARCHAR(200)    DEFAULT NULL            COMMENT '品检条件',
  `trial_days`                 VARCHAR(50)     DEFAULT NULL            COMMENT '试用天数',
  `prev_purchase_record`       VARCHAR(500)    DEFAULT NULL            COMMENT '前期采购记录',
  `purchase_proposal`          VARCHAR(500)    DEFAULT NULL            COMMENT '采购拟办',
  `payment_terms`              VARCHAR(200)    DEFAULT NULL            COMMENT '付款条件',
  `total_amount`               VARCHAR(200)    DEFAULT NULL            COMMENT '采购金额',

  -- 审批签名（8级）
  `sign_purchase_chairman`     VARCHAR(64)     DEFAULT NULL            COMMENT '董事长(采购单位)',
  `sign_purchase_manager`      VARCHAR(64)     DEFAULT NULL            COMMENT '部长/厂长(采购单位)',
  `sign_purchase_director`     VARCHAR(64)     DEFAULT NULL            COMMENT '主任(采购单位)',
  `sign_purchase_handler`      VARCHAR(64)     DEFAULT NULL            COMMENT '经办(采购单位)',
  `sign_request_gm`            VARCHAR(64)     DEFAULT NULL            COMMENT '生产总经理(请购单位)',
  `sign_request_factory_mgr`   VARCHAR(64)     DEFAULT NULL            COMMENT '厂长(请购单位)',
  `sign_request_director`      VARCHAR(64)     DEFAULT NULL            COMMENT '主任(请购单位)',
  `sign_request_handler`       VARCHAR(64)     DEFAULT NULL            COMMENT '经办(请购单位)',

  -- 底部
  `unload_location`            VARCHAR(50)     DEFAULT NULL            COMMENT '指定卸货位',
  `unload_other`               VARCHAR(200)    DEFAULT NULL            COMMENT '卸货其他位置',

  -- 状态与控制
  `form_status`                VARCHAR(20)     NOT NULL DEFAULT '0'    COMMENT '状态:0=请购草稿 1=请购审批中 2=请购已通过 3=采购处理中 4=已完成 5=已驳回',
  `del_flag`                   VARCHAR(2)      NOT NULL DEFAULT '0'    COMMENT '删除标志 0=存在 2=删除',
  `create_by`                  VARCHAR(64)     DEFAULT NULL            COMMENT '创建人',
  `create_time`                DATETIME        DEFAULT NULL            COMMENT '创建时间',
  `update_by`                  VARCHAR(64)     DEFAULT NULL            COMMENT '更新人',
  `update_time`                DATETIME        DEFAULT NULL            COMMENT '更新时间',
  `remark`                     VARCHAR(500)    DEFAULT NULL            COMMENT '备注',

  PRIMARY KEY (`req_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='请购及采购单(科仑普)';


-- ----------------------------
-- 明细表：请购及采购单明细（8行）
-- ----------------------------
DROP TABLE IF EXISTS `erp_purchase_requisition_item`;
CREATE TABLE `erp_purchase_requisition_item` (
  `item_id`           BIGINT          NOT NULL AUTO_INCREMENT COMMENT '明细ID',
  `req_id`            BIGINT          NOT NULL                COMMENT '关联请购单ID → erp_purchase_requisition.req_id',
  `seq`               VARCHAR(10)     NOT NULL                COMMENT '项次',
  `item_name`         VARCHAR(200)    DEFAULT NULL            COMMENT '品名',
  `specification`     VARCHAR(200)    DEFAULT NULL            COMMENT '规格',
  `unit`              VARCHAR(20)     DEFAULT NULL            COMMENT '单位',
  `quantity`          VARCHAR(50)     DEFAULT NULL            COMMENT '请购量',
  `del_flag`          VARCHAR(2)      NOT NULL DEFAULT '0'    COMMENT '删除标志',
  `create_by`         VARCHAR(64)     DEFAULT NULL            COMMENT '创建人',
  `create_time`       DATETIME        DEFAULT NULL            COMMENT '创建时间',
  `update_by`         VARCHAR(64)     DEFAULT NULL            COMMENT '更新人',
  `update_time`       DATETIME        DEFAULT NULL            COMMENT '更新时间',
  PRIMARY KEY (`item_id`),
  KEY `idx_req_id` (`req_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='请购及采购单明细';
