
-- 供应商信息表  新增供应商分级、结算方式、账单周期天数、采购对接人、到货天数、发票类型、合同附件
ALTER TABLE jsh_supplier
ADD COLUMN supplier_level VARCHAR(255) DEFAULT '' COMMENT '供应商分级',
ADD COLUMN settlement_method VARCHAR(1) DEFAULT '' COMMENT '结算方式（0-周结, 1-现结/按单, 2-预付款, 3-月结）',
ADD COLUMN billing_cycle_days INT DEFAULT NULL COMMENT '账单周期天数（单位：天）',
ADD COLUMN procurement_contact VARCHAR(100) DEFAULT '' COMMENT '采购对接人姓名',
ADD COLUMN delivery_days INT DEFAULT NULL COMMENT '到货天数（单位：天）',
ADD COLUMN invoice_type VARCHAR(1)  DEFAULT '' COMMENT '发票类型：0-普通发票, 1-增值税专用发票',
ADD COLUMN contract_upload VARCHAR(1000) DEFAULT '' COMMENT '合同附件存储路径';


-- 产品信息表  新增系统sku、无动销提醒周期
ALTER TABLE jsh_material
ADD COLUMN system_sku VARCHAR(50) DEFAULT '' COMMENT '系统sku',
ADD COLUMN moving_pin_reminder_cycle VARCHAR(20) DEFAULT '' COMMENT '无动销提醒周期';

-- 产品信息表  删除制造商、保质期天数、仓位货架
ALTER TABLE jsh_material
DROP mfrs,
DROP expiry_num,
DROP position;

-- 产品价格扩展信息表  新增生产日期、保质期天数、供应商id、批次号、库存、仓库id、仓位货架
ALTER TABLE jsh_material_extend
ADD COLUMN production_date DATE DEFAULT NULL COMMENT '生产日期',
ADD COLUMN expiry_num INT DEFAULT NULL COMMENT '保质期天数',
ADD COLUMN supplier_id BIGINT DEFAULT NULL COMMENT '供应商id',
ADD COLUMN batch_number VARCHAR(255) DEFAULT '' COMMENT '批次号',
ADD COLUMN inventory DECIMAL(24,6) DEFAULT NULL COMMENT '库存',
ADD COLUMN depot_id BIGINT DEFAULT NULL COMMENT '仓库id',
ADD COLUMN position VARCHAR(255) DEFAULT '' COMMENT '仓位货架';

-- 单据主表  新增凭证图片、商品数量、商品总类数量
ALTER TABLE jsh_depot_head
ADD COLUMN voucher_picture VARCHAR(255) DEFAULT '' COMMENT '凭证图片',
ADD COLUMN goods_quantity INT DEFAULT NULL COMMENT '商品数量',
ADD COLUMN goods_type_count INT DEFAULT NULL COMMENT '商品总类数量';

-- 单据子表  新增实际出入库数量、出入库差异、出入库差异原因、出入库操作用户、出入库时间
ALTER TABLE jsh_depot_item
ADD COLUMN actual_quantity_in_storage DECIMAL(24,6) DEFAULT NULL COMMENT '实际出入库数量',
ADD COLUMN warehousing_variance DECIMAL(24,6) DEFAULT NULL COMMENT '出入库差异',
ADD COLUMN reason_of_difference VARCHAR(255) DEFAULT '' COMMENT '出入库差异原因',
ADD COLUMN warehousing_user BIGINT DEFAULT NULL COMMENT '出入库操作用户',
ADD COLUMN warehousing_time DATE DEFAULT NULL COMMENT '出入库时间';

-- 修改产品类型编码为BIGINT
ALTER TABLE jsh_material_category MODIFY COLUMN serial_no BIGINT;

CREATE TABLE `task_stocktaking` (
    `id` bigint NOT NULL COMMENT '主键ID',
    `task_name` varchar(255) DEFAULT NULL COMMENT '任务名称',
    `creator` bigint DEFAULT NULL COMMENT '负责人',
    `create_by` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '创建人',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `task_type` varchar(255) DEFAULT NULL COMMENT '任务类型',
    `depot_id` bigint DEFAULT NULL COMMENT '仓库ID',
    `number` varchar(255) DEFAULT NULL COMMENT '任务单号',
    `category_count` int DEFAULT NULL COMMENT '种类数',
    `material_count` int DEFAULT NULL COMMENT '商品数',
    `task_status` int DEFAULT NULL COMMENT '任务状态',
    `position_range` varchar(255) DEFAULT NULL COMMENT '库位范围',
    `delete_flag` tinyint DEFAULT NULL COMMENT '删除标志（0:否，1是）',
    `oper_time` datetime DEFAULT NULL COMMENT '盘点时间',
    `oper_by` bigint DEFAULT NULL COMMENT '盘点人',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='盘点任务表';

ALTER TABLE jsh_depot_head
    ADD COLUMN link_tesco varchar(50) DEFAULT '' COMMENT '集采订单编号',
    ADD COLUMN receiver_name VARCHAR(255) DEFAULT '' COMMENT '收货人',
    ADD COLUMN receiver_phone VARCHAR(20) DEFAULT '' COMMENT '收货人电话',
    ADD COLUMN receiver_address VARCHAR(255) DEFAULT '' COMMENT '收货地址';

CREATE TABLE `task_stocktaking_item` (
    `id` bigint NOT NULL COMMENT '主键ID',
    `task_stocktaking_id` bigint DEFAULT NULL COMMENT '任务ID',
    `material_item_id` bigint DEFAULT NULL COMMENT '商品ID',
    `creator` bigint DEFAULT NULL COMMENT '操作人',
    `new_position` varchar(255) DEFAULT NULL COMMENT '新仓位货架',
    `new_inventory` decimal(24,6) DEFAULT NULL COMMENT '新库存数',
    `difference_count` int DEFAULT NULL COMMENT '差异数量',
    `difference_reason` varchar(255) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT NULL COMMENT '差异原因',
    `delete_flag` varchar(1) CHARACTER SET utf8mb3 COLLATE utf8mb3_general_ci DEFAULT '0' COMMENT '删除标记，0未删除，1删除',
    `oper_time` datetime DEFAULT NULL COMMENT '操作时间',
    `status` int DEFAULT '1' COMMENT '盘点状态（1.未盘，2.盘盈，3.盘亏 4.无差异）',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3 COMMENT='盘点任务关联商品表';

CREATE TABLE `apk_version` (
    `id` bigint NOT NULL COMMENT '主键ID',
    `url` varchar(255) DEFAULT NULL COMMENT '下载地址',
    `version` varchar(255) DEFAULT NULL COMMENT '版本号',
    `name` varchar(255) DEFAULT NULL COMMENT '名称',
    `create_time` datetime DEFAULT NULL COMMENT '创建时间',
    `delete_flag` tinyint DEFAULT NULL COMMENT '是否删除',
    PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb3;
