-- 首付款管理 / 开票管理 CREATE TABLE IF NOT EXISTS `blade_invoice_application` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `application_no` varchar(100) NOT NULL, `project_id` bigint(20) DEFAULT NULL, `project_name` varchar(100) DEFAULT NULL, `dept_id` bigint(20) DEFAULT NULL, `dept_name` varchar(100) DEFAULT NULL, `issuer_name` varchar(200) DEFAULT NULL, `receiver_customer_id` bigint(20) DEFAULT NULL, `receiver_name` varchar(200) DEFAULT NULL, `invoice_type` varchar(30) NOT NULL, `available_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `application_date` date DEFAULT NULL, `applicant_name` varchar(100) DEFAULT NULL, `undertaking_dept_id` bigint(20) DEFAULT NULL, `undertaking_dept_name` varchar(100) DEFAULT NULL, `department_emails` varchar(320) DEFAULT NULL COMMENT '部门邮箱(多个以分号分隔,最多3个)', `receiver_invoice_info_id` bigint(20) DEFAULT NULL, `taxpayer_no` varchar(20) DEFAULT NULL, `bank_name` varchar(100) DEFAULT NULL, `bank_account` varchar(50) DEFAULT NULL, `registered_address` varchar(200) DEFAULT NULL, `contact_name` varchar(50) DEFAULT NULL, `contact_phone` varchar(11) DEFAULT NULL, `email` varchar(100) DEFAULT NULL, `approval_status` varchar(30) NOT NULL DEFAULT 'draft', `current_node` varchar(100) DEFAULT NULL, `current_processor` varchar(200) DEFAULT NULL, `kingdee_bill_no` varchar(100) DEFAULT NULL, `kingdee_status` varchar(30) NOT NULL DEFAULT 'unsynced', `synced_time` datetime DEFAULT NULL, `attachments_json` longtext, `remark` varchar(200) DEFAULT NULL, `void_reason` varchar(200) DEFAULT NULL, PRIMARY KEY (`id`), UNIQUE KEY `uk_invoice_application_no` (`tenant_id`,`application_no`), KEY `idx_invoice_application_project` (`project_id`), KEY `idx_invoice_application_status` (`approval_status`), KEY `idx_invoice_application_kingdee` (`kingdee_status`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请'; CREATE TABLE IF NOT EXISTS `blade_invoice_application_settlement` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `invoice_application_id` bigint(20) NOT NULL, `formal_settlement_id` bigint(20) NOT NULL, `formal_settlement_no` varchar(100) NOT NULL, `settlement_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `available_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `allocated_invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00', PRIMARY KEY (`id`), KEY `idx_invoice_application_settlement` (`invoice_application_id`,`formal_settlement_id`), KEY `idx_invoice_settlement_formal` (`formal_settlement_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请关联结算单'; CREATE TABLE IF NOT EXISTS `blade_invoice_application_sheet` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `invoice_application_id` bigint(20) NOT NULL, `sheet_no` int(11) NOT NULL, `invoice_amount` decimal(18,2) NOT NULL DEFAULT '0.00', PRIMARY KEY (`id`), KEY `idx_invoice_application_sheet` (`invoice_application_id`,`sheet_no`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请发票张次'; CREATE TABLE IF NOT EXISTS `blade_invoice_application_line` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `invoice_application_id` bigint(20) NOT NULL, `invoice_sheet_id` bigint(20) NOT NULL, `line_no` int(11) NOT NULL, `goods_category` varchar(100) NOT NULL, `goods_name` varchar(100) NOT NULL, `unit` varchar(30) DEFAULT NULL, `quantity` decimal(18,4) DEFAULT NULL, `unit_price_no_tax` decimal(18,4) DEFAULT NULL, `amount_with_tax` decimal(18,2) NOT NULL DEFAULT '0.00', `tax_rate` decimal(8,4) NOT NULL DEFAULT '0.0000', `tax_amount` decimal(18,2) NOT NULL DEFAULT '0.00', `remark` varchar(200) DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_invoice_sheet_line` (`invoice_sheet_id`,`line_no`), KEY `idx_invoice_line_application` (`invoice_application_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请商品行'; CREATE TABLE IF NOT EXISTS `blade_invoice_application_detail` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `invoice_application_id` bigint(20) NOT NULL, `formal_settlement_id` bigint(20) NOT NULL, `formal_settlement_detail_id` bigint(20) NOT NULL, `line_no` int(11) NOT NULL, `document_no` varchar(100) DEFAULT NULL, `waybill_no` varchar(100) DEFAULT NULL, `vehicle_no` varchar(100) DEFAULT NULL, `departure_address` varchar(500) DEFAULT NULL, `arrival_address` varchar(500) DEFAULT NULL, `actual_departure_time` datetime DEFAULT NULL, `actual_completion_time` datetime DEFAULT NULL, `transport_type` varchar(100) DEFAULT NULL, `cargo_name` varchar(200) DEFAULT NULL, `cargo_type` varchar(100) DEFAULT NULL, `transport_quantity` decimal(18,4) DEFAULT NULL, `quantity_unit` varchar(30) DEFAULT NULL, `mileage` decimal(18,2) DEFAULT NULL, `batch_no` varchar(100) DEFAULT NULL, `freight_amount` decimal(18,2) DEFAULT NULL, `fee_items_json` longtext, `settlement_amount_tax` decimal(18,2) DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_invoice_application_detail` (`invoice_application_id`,`formal_settlement_detail_id`), KEY `idx_invoice_detail_settlement` (`formal_settlement_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请结算明细快照'; CREATE TABLE IF NOT EXISTS `blade_invoice_application_record` ( `id` bigint(20) NOT NULL, `tenant_id` varchar(12) NOT NULL DEFAULT '000000', `create_user` bigint(20) DEFAULT NULL, `create_dept` bigint(20) DEFAULT NULL, `create_time` datetime DEFAULT NULL, `update_user` bigint(20) DEFAULT NULL, `update_time` datetime DEFAULT NULL, `status` int(11) DEFAULT '1', `is_deleted` int(11) DEFAULT '0', `invoice_application_id` bigint(20) NOT NULL, `action_type` varchar(30) NOT NULL, `action_name` varchar(50) NOT NULL, `from_status` varchar(30) DEFAULT NULL, `to_status` varchar(30) DEFAULT NULL, `operator_name` varchar(100) DEFAULT NULL, `reason` varchar(200) DEFAULT NULL, `kingdee_bill_no` varchar(100) DEFAULT NULL, PRIMARY KEY (`id`), KEY `idx_invoice_record_application` (`invoice_application_id`,`create_time`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci COMMENT='开票申请操作记录'; INSERT INTO `blade_menu` (`id`,`parent_id`,`code`,`name`,`alias`,`path`,`source`,`sort`,`category`,`action`,`is_open`,`component`,`remark`,`is_deleted`) VALUES (2090000000000001200,0,'first_payment_management','首付款管理','first_payment_management','/payment','iconfont icon-caidanguanli',6,1,0,1,NULL,'',0), (2090000000000001220,2090000000000001200,'invoice_application','开票管理','invoice_application','/payment/invoice-application','',2,1,0,1,NULL,'',0), (2090000000000001221,2090000000000001220,'invoice_application_view','查看','invoice_application_view','','',1,2,0,1,NULL,'',0), (2090000000000001222,2090000000000001220,'invoice_application_add','新增','invoice_application_add','','',2,2,0,1,NULL,'',0), (2090000000000001223,2090000000000001220,'invoice_application_edit','编辑','invoice_application_edit','','',3,2,0,1,NULL,'',0), (2090000000000001224,2090000000000001220,'invoice_application_delete','删除','invoice_application_delete','','',4,2,0,1,NULL,'',0), (2090000000000001225,2090000000000001220,'invoice_application_submit','提交审批','invoice_application_submit','','',5,2,0,1,NULL,'',0), (2090000000000001226,2090000000000001220,'invoice_application_approve','审批','invoice_application_approve','','',6,2,0,1,NULL,'',0), (2090000000000001227,2090000000000001220,'invoice_application_sync','同步金蝶','invoice_application_sync','','',7,2,0,1,NULL,'',0), (2090000000000001228,2090000000000001220,'invoice_application_export','导出','invoice_application_export','','',8,2,0,1,NULL,'',0), (2090000000000001229,2090000000000001220,'invoice_application_void','作废','invoice_application_void','','',9,2,0,1,NULL,'',0) ON DUPLICATE KEY UPDATE `name`=VALUES(`name`),`path`=VALUES(`path`),`component`=VALUES(`component`),`is_deleted`=0;