-- MySQL Workbench Forward Engineering

SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0;
SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0;
SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='TRADITIONAL,ALLOW_INVALID_DATES';

-- -----------------------------------------------------
-- Schema mydb
-- -----------------------------------------------------
-- -----------------------------------------------------
-- Schema DBKeyword_ProjectDbName
-- -----------------------------------------------------

-- -----------------------------------------------------
-- Schema DBKeyword_ProjectDbName
-- -----------------------------------------------------
CREATE SCHEMA IF NOT EXISTS `DBKeyword_ProjectDbName` DEFAULT CHARACTER SET utf8mb4 ;
USE `DBKeyword_ProjectDbName` ;

-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`Account`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`Account` (
  `ID` VARCHAR(128) NOT NULL,
  `Code` VARCHAR(50) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `ParentCode` VARCHAR(50) NULL DEFAULT NULL,
  `FullName` VARCHAR(200) NULL DEFAULT NULL,
  `AcctProp` INT(11) NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  `AcctLevel` INT(11) NULL DEFAULT NULL,
  `Direction` INT(11) NOT NULL,
  `IsLeaf` SMALLINT(6) NOT NULL,
  `RuleType` INT(11) NOT NULL,
  `IsActive` SMALLINT(6) NOT NULL,
  `EnglishName` VARCHAR(200) NULL DEFAULT NULL,
  `IndustryID` VARCHAR(128) NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`AccountRemap`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`AccountRemap` (
  `RemapId` VARCHAR(128) NOT NULL,
  `Period` INT(11) NOT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `RemapDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `RemapCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `StdCode` VARCHAR(50) NULL DEFAULT NULL,
  `ReMappName` VARCHAR(200) NOT NULL,
  `ReMappReason` TEXT NULL DEFAULT NULL,
  `ReMappTypeId` INT(11) NOT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `UpdateTime` DATETIME NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `RemapBatchId` VARCHAR(128) NULL DEFAULT NULL,
  PRIMARY KEY (`RemapId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`AccountRemapSum`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`AccountRemapSum` (
  `AccountRemapSumId` VARCHAR(128) NOT NULL,
  `Period` INT(11) NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `Parent` VARCHAR(50) NULL DEFAULT NULL,
  `AcctLevel` INT(11) NULL DEFAULT NULL,
  `RemapDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `RemapCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `UpdateTime` DATETIME NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  PRIMARY KEY (`AccountRemapSumId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`Balance`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`Balance` (
  `BalanceId` VARCHAR(128) NOT NULL,
  `PeriodId` INT(11) NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `MonthId` INT(11) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `CarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `StdCode` VARCHAR(50) NULL DEFAULT NULL,
  `MappingReason` TEXT NULL DEFAULT NULL,
  `MappingUser` VARCHAR(128) NULL DEFAULT NULL,
  `MappingTime` DATETIME NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  `IsDummy` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`BalanceStd`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`BalanceStd` (
  `BalanceId` VARCHAR(128) NOT NULL,
  `PeriodId` INT(11) NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `CarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `UpdateTime` DATETIME NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`BalanceStdManual`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`BalanceStdManual` (
  `BalanceID` VARCHAR(128) NOT NULL,
  `PeriodID` BIGINT(20) NOT NULL,
  `AcctCode` VARCHAR(50) NOT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  `CarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `CarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverDebit` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCarryoverCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitNet` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditNet` DECIMAL(18,3) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;

-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`CompanyBalance`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`CompanyBalance` (
  `BalanceId` VARCHAR(128) NOT NULL,
  `PeriodId` INT(11) NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `MonthId` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`CustBalance`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`CustBalance` (
  `BalanceId` VARCHAR(128) NOT NULL,
  `PeriodId` BIGINT(20) NOT NULL,
  `AcctCode` VARCHAR(50) NOT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `MonthId` INT(11) NULL DEFAULT NULL,
  `IsDummy` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`CustBalanceStd`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`CustBalanceStd` (
  `BalanceID` VARCHAR(128) NOT NULL,
  `PeriodID` INT(11) NOT NULL,
  `AcctCode` VARCHAR(50) NOT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`CustBalanceStdManual`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`CustBalanceStdManual` (
  `BalanceID` VARCHAR(128) NOT NULL,
  `PeriodID` BIGINT(20) NOT NULL,
  `AcctCode` VARCHAR(50) NOT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `BegBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `BegCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `DebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `YearCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndDebitBal` DECIMAL(18,3) NULL DEFAULT NULL,
  `EndCreditBal` DECIMAL(18,3) NULL DEFAULT NULL,
  PRIMARY KEY (`BalanceID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`CustomsInvoice`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`CustomsInvoice` (
  `CustomsId` VARCHAR(128) NOT NULL,
  `PayNum` VARCHAR(200) NULL DEFAULT NULL,
  `IssueDate` DATETIME NULL DEFAULT NULL,
  `InvoiceTaxAmount` DECIMAL(18,3) NULL DEFAULT NULL,
  `InvoiceAmount` DECIMAL(18,3) NULL DEFAULT NULL,
  `AuditResult` TEXT NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `PeriodId` INT(11) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `Status` INT(11) NULL DEFAULT NULL,
  `PartAccntedPeriod` INT(11) NULL DEFAULT NULL,
  `AccntedPeriod` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`CustomsId`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;

-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`EnterpriseAccount`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`EnterpriseAccount` (
  `ID` VARCHAR(128) NOT NULL,
  `AcctCode` VARCHAR(50) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `ParentCode` VARCHAR(50) NULL DEFAULT NULL,
  `FullName` VARCHAR(200) NULL DEFAULT NULL,
  `AcctProp` INT(11) NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  `AcctLevel` INT(11) NULL DEFAULT NULL,
  `Direction` INT(11) NOT NULL,
  `IsLeaf` SMALLINT(6) NULL DEFAULT NULL,
  `IsActive` SMALLINT(6) NOT NULL,
  `EnglishName` VARCHAR(200) NULL DEFAULT NULL,
  `StdCode` VARCHAR(50) NULL DEFAULT NULL,
  `EnterpriseAccountSetID` VARCHAR(128) NOT NULL,
  `IsDummy` INT(11) NULL DEFAULT NULL,
  `IsInVoucher` INT(11) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `UpdatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`EntriesCheckDetailResult`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`EntriesCheckDetailResult` (
  `ID` VARCHAR(128) NOT NULL,
  `ResultID` VARCHAR(128) NOT NULL,
  `IsDoubt` INT(11) NOT NULL,
  `IsBigVoucher` INT(11) NOT NULL,
  `VoucherID` VARCHAR(128) NOT NULL,
  `VID` TEXT NOT NULL,
  `Date` DATE NOT NULL,
  `Group` VARCHAR(50) NULL DEFAULT NULL,
  `Period` INT(11) NULL DEFAULT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `CustomerName` VARCHAR(100) NULL DEFAULT NULL,
  `Summary` TEXT NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `StdCode` VARCHAR(50) NULL DEFAULT NULL,
  `Debit` DECIMAL(18,3) NULL DEFAULT NULL,
  `Credit` DECIMAL(18,3) NULL DEFAULT NULL,
  `Attach` BIGINT(20) NULL DEFAULT NULL,
  `ItemID` TEXT NULL DEFAULT NULL,
  `ImportType` INT(11) NULL DEFAULT NULL,
  `IsFiltered` INT(11) NOT NULL,
  `IsRelevantAmt` INT(11) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`EntriesCheckResult`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`EntriesCheckResult` (
  `ID` VARCHAR(128) NOT NULL,
  `ModelID` VARCHAR(128) NOT NULL,
  `Code` VARCHAR(20) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `Description` TEXT NULL DEFAULT NULL,
  `VoucherNum` INT(11) NOT NULL,
  `EntriesNum` INT(11) NOT NULL,
  `DebitRelevantAmt` DECIMAL(18,3) NOT NULL,
  `CreditRelevantAmt` DECIMAL(18,3) NOT NULL,
  `DebitTotalAmt` DECIMAL(18,3) NOT NULL,
  `CreditTotalAmt` DECIMAL(18,3) NOT NULL,
  `BigVoucherNum` INT(11) NOT NULL,
  `BigEntriesNum` INT(11) NOT NULL,
  `BigDebitRelevantAmt` DECIMAL(18,3) NOT NULL,
  `BigCreditRelevantAmt` DECIMAL(18,3) NOT NULL,
  `BigDebitTotalAmt` DECIMAL(18,3) NOT NULL,
  `BigCreditTotalAmt` DECIMAL(18,3) NOT NULL,
  `EntryDoubts` INT(11) NOT NULL,
  `BigEntryDoubts` INT(11) NOT NULL,
  `VoucherDoubts` INT(11) NOT NULL,
  `BigVoucherDoubts` INT(11) NOT NULL,
  `IsFiltered` INT(11) NOT NULL,
  `ServiceTypeID` VARCHAR(128) NOT NULL,
  `CategoryID` VARCHAR(128) NOT NULL,
  `Type` INT(11) NOT NULL,
  `IsFilter` INT(11) NOT NULL,
  `IsShow` INT(11) NOT NULL,
  `Period` INT(11) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`FormulaCache`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`FormulaCache` (
  `ID` VARCHAR(128) NOT NULL,
  `Period` INT(11) NOT NULL,
  `Year` INT(11) NOT NULL,
  `Formula` TEXT NOT NULL,
  `FormulaValue` VARCHAR(200) NULL DEFAULT NULL,
  `TargetReportTemplateID` VARCHAR(128) NULL DEFAULT NULL,
  `TargetRowIndex` INT(11) NULL DEFAULT NULL,
  `TargetRowName` VARCHAR(200) NULL DEFAULT NULL,
  `TargetColumnIndex` INT(11) NULL DEFAULT NULL,
  `TargetColumnName` VARCHAR(200) NULL DEFAULT NULL,
  `TargetPeriod` INT(11) NULL DEFAULT NULL,
  `TargetCellDataID` VARCHAR(128) NULL DEFAULT NULL,
  `TargetCellTemplateID` VARCHAR(128) NULL DEFAULT NULL,
  `ResultType` INT(11) NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`, `Period`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`GoodsMapping`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`GoodsMapping` (
  `ID` VARCHAR(128) NOT NULL,
  `CustGoodsName` VARCHAR(50) NULL DEFAULT NULL,
  `StdGoodsName` VARCHAR(50) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ImportFile`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ImportFile` (
  `FileID` VARCHAR(128) NOT NULL,
  `FilePath` TEXT NOT NULL,
  `FileName` TEXT NULL DEFAULT NULL,
  `PeriodID` INT(11) NULL DEFAULT NULL,
  `FileType` VARCHAR(50) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `FileImportType` INT(11) NULL DEFAULT NULL,
  `Comments` LONGTEXT NULL DEFAULT NULL,
  PRIMARY KEY (`FileID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`IndexAnalysisDetailResult`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`IndexAnalysisDetailResult` (
  `ID` VARCHAR(128) NOT NULL,
  `ResultID` VARCHAR(128) NOT NULL,
  `Year` INT(11) NOT NULL,
  `Period` INT(11) NOT NULL,
  `IndexName` VARCHAR(50) NULL DEFAULT NULL,
  `Sequence` INT(11) NULL DEFAULT NULL,
  `DisplayType` INT(11) NULL DEFAULT NULL,
  `IsVisible` INT(11) NOT NULL,
  `IsMainValue` INT(11) NOT NULL,
  `IsYearValue` INT(11) NOT NULL,
  `IsMonExp` INT(11) NOT NULL,
  `IsYearExp` INT(11) NOT NULL,
  `IndexResult` VARCHAR(50) NULL DEFAULT NULL,
  `IndexCode` TEXT NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`IndexAnalysisResult`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`IndexAnalysisResult` (
  `ID` VARCHAR(128) NOT NULL,
  `ModelID` VARCHAR(128) NOT NULL,
  `Code` VARCHAR(20) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `Description` TEXT NULL DEFAULT NULL,
  `MonthExplain` VARCHAR(200) NULL DEFAULT NULL,
  `YearExplain` VARCHAR(200) NULL DEFAULT NULL,
  `ServiceTypeID` VARCHAR(128) NOT NULL,
  `CategoryID` VARCHAR(128) NOT NULL,
  `Type` INT(11) NOT NULL,
  `IndexCodeTotal` TEXT NULL DEFAULT NULL,
  `IsShow` INT(11) NOT NULL,
  `IsReport` INT(11) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`InputVATInvoice`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`InputVATInvoice` (
  `ID` VARCHAR(128) NOT NULL,
  `PeriodID` INT(11) NOT NULL,
  `InvoiceCode` VARCHAR(50) NOT NULL,
  `InvoiceNumber` VARCHAR(50) NOT NULL,
  `InvoiceDate` DATETIME NOT NULL,
  `SellerTaxNumber` VARCHAR(50) NOT NULL,
  `Amount` DECIMAL(18,4) NULL DEFAULT NULL,
  `TaxAmount` DECIMAL(18,4) NULL DEFAULT NULL,
  `InvoiceType` INT(11) NOT NULL,
  `CertificationResult` VARCHAR(50) NULL DEFAULT NULL,
  `CertificationDate` DATETIME NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `Status` INT(11) NULL DEFAULT NULL,
  `PartAccntedPeriod` INT(11) NULL DEFAULT NULL,
  `AccntedPeriod` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`InputVATInvoiceItem`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`InputVATInvoiceItem` (
  `ID` VARCHAR(128) NOT NULL,
  `InputVATInvoiceID` VARCHAR(128) NOT NULL,
  `PeriodID` INT(11) NOT NULL,
  `InvoiceCode` VARCHAR(50) NOT NULL,
  `InvoiceNumber` VARCHAR(50) NOT NULL,
  `Amount` DECIMAL(18,4) NULL DEFAULT NULL,
  `TaxAmount` DECIMAL(18,4) NULL DEFAULT NULL,
  `TaxRate` DECIMAL(18,4) NULL DEFAULT NULL,
  `ProductionName` VARCHAR(100) NOT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `ProductionCode` VARCHAR(50) NULL DEFAULT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`InvoiceMapping`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`InvoiceMapping` (
  `ID` VARCHAR(128) NOT NULL,
  `TranCode` VARCHAR(50) NOT NULL,
  `InvoiceCode` VARCHAR(50) NOT NULL,
  `InvoiceNumber` VARCHAR(50) NOT NULL,
  `Period` INT(11) NOT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ModelBackFillAmount`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ModelBackFillAmount` (
  `ID` VARCHAR(128) NOT NULL,
  `DataSourceID` VARCHAR(128) NOT NULL,
  `EntriesCheckResultID` VARCHAR(128) NOT NULL,
  `Amount` DECIMAL(20,4) NOT NULL,
  `CellDataID` VARCHAR(128) NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ModelCategoryResult`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ModelCategoryResult` (
  `ID` VARCHAR(128) NOT NULL,
  `CategoryID` VARCHAR(128) NOT NULL,
  `ClientCode` VARCHAR(50) NOT NULL,
  `OrganizationID` VARCHAR(128) NOT NULL,
  `Category` VARCHAR(10) NOT NULL,
  `ParentID` VARCHAR(128) NOT NULL,
  `Sort` INT(11) NOT NULL,
  `Quantity` INT(11) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  `IndustryID` VARCHAR(128) NULL DEFAULT NULL,
  `ServiceTypeID` VARCHAR(128) NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ModelDetailLog`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ModelDetailLog` (
  `ID` VARCHAR(128) NOT NULL,
  `ModelLogID` VARCHAR(128) NOT NULL,
  `Feature` INT(11) NOT NULL,
  `ModelID` VARCHAR(128) NOT NULL,
  `Code` VARCHAR(20) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `Description` TEXT NULL DEFAULT NULL,
  `RunningResult` INT(11) NOT NULL,
  `Period` INT(11) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ModelLog`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ModelLog` (
  `ID` VARCHAR(128) NOT NULL,
  `OrganizationID` VARCHAR(128) NOT NULL,
  `RunNumber` INT(11) NOT NULL,
  `Description` TEXT NULL DEFAULT NULL,
  `SuccessNumber` INT(11) NOT NULL,
  `FailureNumber` INT(11) NOT NULL,
  `ServiceTypeID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ModifiedReportCell`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ModifiedReportCell` (
  `ID` VARCHAR(128) NOT NULL,
  `ReportId` VARCHAR(128) NULL DEFAULT NULL,
  `Row` INT(11) NULL DEFAULT NULL,
  `Col` INT(11) NULL DEFAULT NULL,
  `OriginalValue` VARCHAR(200) NULL DEFAULT NULL,
  `Value` VARCHAR(200) NULL DEFAULT NULL,
  `RelatedCellDataId` VARCHAR(128) NULL DEFAULT NULL,
  `Comment` TEXT NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `UpdateTime` DATETIME NULL DEFAULT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`OperationLog`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`OperationLog` (
  `ID` VARCHAR(128) NOT NULL,
  `OperationName` VARCHAR(200) NOT NULL,
  `ModuleID` INT(11) NOT NULL,
  `OperationObject` LONGTEXT NULL DEFAULT NULL,
  `OperationType` INT(11) NOT NULL,
  `OperationContent` LONGTEXT NULL DEFAULT NULL,
  `OriginalState` LONGTEXT NULL DEFAULT NULL,
  `UpdateState` LONGTEXT NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `Comment` LONGTEXT NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  `UpdateTime` DATETIME NOT NULL,
  `IP` VARCHAR(100) NULL DEFAULT NULL,
  `Period` INT(11) NULL DEFAULT NULL,
  `ServiceType` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`OutputVATInvoice`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`OutputVATInvoice` (
  `InvoiceID` VARCHAR(128) NOT NULL,
  `InvoiceType` INT(11) NOT NULL,
  `ClassCode` VARCHAR(50) NOT NULL,
  `InvoiceNumber` VARCHAR(50) NOT NULL,
  `BuyerName` VARCHAR(200) NULL DEFAULT NULL,
  `BuyerTaxNumber` VARCHAR(200) NULL DEFAULT NULL,
  `BankAccount` VARCHAR(200) NULL DEFAULT NULL,
  `PhoneNum` VARCHAR(200) NULL DEFAULT NULL,
  `InvoiceDate` DATETIME NOT NULL,
  `SeqNo` INT(11) NOT NULL,
  `PeriodID` INT(11) NOT NULL,
  `Status` INT(11) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `PartAccntedPeriod` INT(11) NULL DEFAULT NULL,
  `AccntedPeriod` INT(11) NULL DEFAULT NULL,
  PRIMARY KEY (`InvoiceID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`OutputVATInvoiceItem`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`OutputVATInvoiceItem` (
  `ItemID` VARCHAR(128) NOT NULL,
  `InvoiceID` VARCHAR(128) NOT NULL,
  `CodeVersion` VARCHAR(50) NULL DEFAULT NULL,
  `ProductName` VARCHAR(200) NULL DEFAULT NULL,
  `DocumentNum` VARCHAR(100) NULL DEFAULT NULL,
  `ProductStandard` VARCHAR(100) NULL DEFAULT NULL,
  `Unit` VARCHAR(100) NULL DEFAULT NULL,
  `Quantity` INT(11) NULL DEFAULT NULL,
  `UnitPrice` DOUBLE NULL DEFAULT NULL,
  `Amount` DECIMAL(18,4) NOT NULL,
  `TaxRate` DECIMAL(18,4) NOT NULL,
  `TaxAmount` DECIMAL(18,4) NOT NULL,
  `SeqNo` INT(11) NOT NULL,
  `TaxClassCode` VARCHAR(100) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NOT NULL,
  `CreateTime` DATETIME NOT NULL,
  `PeriodID` INT(11) NOT NULL,
  PRIMARY KEY (`ItemID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`PeriodCellReference`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`PeriodCellReference` (
  `ID` VARCHAR(128) NOT NULL,
  `Period` INT(11) NOT NULL,
  `FormulaBlockIndex` INT(11) NOT NULL,
  `ReferenceFromCellID` VARCHAR(128) NULL DEFAULT NULL,
  `ReferenceFromTemplateID` VARCHAR(128) NULL DEFAULT NULL,
  `ReferenceToCellID` VARCHAR(128) NULL DEFAULT NULL,
  `ReferenceToTemplateID` VARCHAR(128) NULL DEFAULT NULL,
  `ReferenceFromKeyValueID` VARCHAR(128) NULL DEFAULT NULL,
  `ReferenceToKeyValueID` VARCHAR(128) NULL DEFAULT NULL,
  `IsValidation` INT(11) NOT NULL,
  PRIMARY KEY (`ID`, `Period`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;
-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`Report`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`report` (
   `id` bigint(18) unsigned NOT NULL,
   `template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
   `period` int(11) unsigned NOT NULL DEFAULT '0',
   `project_id` varchar(128) NOT NULL DEFAULT '',
   `create_by` varchar(128) NOT NULL DEFAULT '',
   `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
   `update_by` varchar(128) NOT NULL DEFAULT '',
   `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
   PRIMARY KEY (`id`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`StandardAccount`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`StandardAccount` (
  `ID` VARCHAR(128) NOT NULL,
  `Code` VARCHAR(50) NOT NULL,
  `Name` VARCHAR(50) NOT NULL,
  `ParentCode` VARCHAR(50) NULL DEFAULT NULL,
  `FullName` VARCHAR(200) NULL DEFAULT NULL,
  `AcctProp` INT(11) NULL DEFAULT NULL,
  `SubProp` INT(11) NULL DEFAULT NULL,
  `AcctLevel` INT(11) NULL DEFAULT NULL,
  `Direction` INT(11) NOT NULL,
  `IsLeaf` SMALLINT(6) NOT NULL,
  `RuleType` INT(11) NOT NULL,
  `IsActive` SMALLINT(6) NOT NULL,
  `EnglishName` VARCHAR(200) NULL DEFAULT NULL,
  `IndustryID` VARCHAR(128) NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`ValidationInfo`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`ValidationInfo` (
  `ID` VARCHAR(128) NOT NULL,
  `ImportTypeId` INT(11) NOT NULL,
  `ValidationResult` LONGTEXT NULL DEFAULT NULL,
  `ValidationDetails` LONGTEXT NULL DEFAULT NULL,
  `ValidationTips` LONGTEXT NULL DEFAULT NULL,
  `Number` INT(11) NULL DEFAULT NULL,
  `CreatorId` VARCHAR(50) NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `PeriodId` INT(11) NULL DEFAULT NULL,
  `ErpCheckTypeId` INT(11) NULL DEFAULT NULL,
  `ErrorLevel` INT(11) NULL DEFAULT NULL,
  `IsShowDetail` SMALLINT(6) NULL DEFAULT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`Voucher`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`Voucher` (
  `VoucherID` VARCHAR(128) NOT NULL,
  `VID` TEXT NOT NULL,
  `Date` DATE NOT NULL,
  `Group` VARCHAR(50) NULL DEFAULT NULL,
  `Period` INT(11) NULL DEFAULT NULL,
  `CustomerCode` VARCHAR(50) NULL DEFAULT NULL,
  `CustomerName` VARCHAR(100) NULL DEFAULT NULL,
  `Summary` TEXT NULL DEFAULT NULL,
  `AcctCode` VARCHAR(50) NULL DEFAULT NULL,
  `Debit` DECIMAL(18,3) NULL DEFAULT NULL,
  `Credit` DECIMAL(18,3) NULL DEFAULT NULL,
  `Attach` BIGINT(20) NULL DEFAULT NULL,
  `ItemID` TEXT NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `ImportType` INT(11) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `MonthID` INT(11) NULL DEFAULT NULL,
  `OriginalPeriod` INT(11) NULL DEFAULT NULL,
  `Status` INT(11) NULL DEFAULT NULL,
  `PartBilledPeriod` INT(11) NULL DEFAULT NULL,
  `BilledPeriod` INT(11) NULL DEFAULT NULL,
  `StdCode` VARCHAR(50) NULL DEFAULT NULL,
  `MappingReason` TEXT NULL DEFAULT NULL,
  `MappingUser` VARCHAR(128) NULL DEFAULT NULL,
  `MappingTime` DATETIME NULL DEFAULT NULL,
  `RemapId` VARCHAR(128) NULL DEFAULT NULL,
  PRIMARY KEY (`VoucherID`),
  INDEX `IX_Voucher_AcctCode` USING BTREE (`AcctCode` ASC),
  INDEX `IX_Voucher_CustomerCode` USING BTREE (`CustomerCode` ASC))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`VoucherMain`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`VoucherMain` (
  `VoucherMainID` VARCHAR(128) NOT NULL,
  `Period` INT(11) NULL DEFAULT NULL,
  `Group` VARCHAR(50) NULL DEFAULT NULL,
  `VID` TEXT NOT NULL,
  `VoucherCount` INT(11) NULL DEFAULT NULL,
  `AcctCodeCount` INT(11) NULL DEFAULT NULL,
  `Amount` DECIMAL(18,3) NULL DEFAULT NULL,
  `AmountCredit` DECIMAL(18,3) NULL DEFAULT NULL,
  `CreateTime` DATETIME NULL DEFAULT NULL,
  `UpdateTime` DATETIME NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  PRIMARY KEY (`VoucherMainID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


-- -----------------------------------------------------
-- Table `DBKeyword_ProjectDbName`.`VoucherMapping`
-- -----------------------------------------------------
CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`VoucherMapping` (
  `ID` VARCHAR(128) NOT NULL,
  `TranCode` VARCHAR(50) NOT NULL,
  `VID` VARCHAR(50) NOT NULL,
  `Period` INT(11) NOT NULL,
  `Group` VARCHAR(50) NULL DEFAULT NULL,
  `ItemID` VARCHAR(50) NULL DEFAULT NULL,
  `CreatorID` VARCHAR(128) NULL DEFAULT NULL,
  `CreateTime` DATETIME NOT NULL,
  PRIMARY KEY (`ID`))
ENGINE = InnoDB
DEFAULT CHARACTER SET = utf8mb4;


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`cell_comment` (
  `id` bigint(18) unsigned NOT NULL,
  `cell_data_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `user_id` varchar(128) NOT NULL DEFAULT '',
  `user_name` varchar(50) NOT NULL DEFAULT '',
  `comment` varchar(1000) NOT NULL DEFAULT '',
  `reply_to_user_name` varchar(50) NOT NULL DEFAULT '',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `cell_data` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`cell_data` (
  `id` bigint(18) unsigned NOT NULL,
  `report_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `data` varchar(200) NOT NULL DEFAULT '',
  `formula_exp` varchar(1000) NOT NULL DEFAULT '',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `cell_data_source` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`cell_data_source` (
  `id` bigint(18) unsigned NOT NULL,
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `cell_data_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `data_source_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `operation_type` int(11) unsigned NOT NULL DEFAULT '0',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `data_source` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`data_source` (
  `id` bigint(18) unsigned NOT NULL,
  `type` int(11) unsigned NOT NULL DEFAULT '0',
  `name` varchar(1000) NOT NULL DEFAULT '',
  `amount` decimal(20,4) NOT NULL DEFAULT '0.0000',
  `description` varchar(1000) NOT NULL DEFAULT '',
  `key_value_data_id` varchar(128) NOT NULL DEFAULT '',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `row_name` varchar(1000) NOT NULL DEFAULT '',
  `column_name` varchar(1000) NOT NULL DEFAULT '',
  `row_index` int(11) unsigned NOT NULL DEFAULT '0',
  `remap_batch_id` varchar(128) NOT NULL DEFAULT '',
  `column_index` int(11) unsigned NOT NULL DEFAULT '0',
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `data_source_detail` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`data_source_detail` (
  `id` bigint(18) unsigned NOT NULL,
  `data_source_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `data_source_type` int(11) unsigned NOT NULL DEFAULT '0',
  `item_value` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_cell_template` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_cell_template` (
  `id` bigint(18) unsigned NOT NULL,
  `period` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '月份',
  `report_template_id` bigint(18) unsigned NOT NULL DEFAULT '0' COMMENT '报表模板ID',
  `row_index` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '行号',
  `row_name` varchar(200) NOT NULL DEFAULT '' COMMENT '行名称',
  `column_index` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '列号',
  `column_name` varchar(200) NOT NULL DEFAULT '' COMMENT '列名称',
  `comment` varchar(1000) NOT NULL DEFAULT '' COMMENT '注释',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00' COMMENT '创建时间',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00' COMMENT '更新时间',
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0' COMMENT '主库单元格模板ID',
  `data_type` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '数据类型',
  `is_read_only` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '是否只读',
  `copy_from_id` bigint(18) unsigned NOT NULL DEFAULT '0' COMMENT '复制数据源ID',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_cell_template_config` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_cell_template_config` (
  `id` bigint(18) unsigned NOT NULL,
  `period` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '月份',
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0' COMMENT '单元格模板ID',
  `report_template_id` bigint(18) unsigned NOT NULL DEFAULT '0' COMMENT '报表模板ID',
  `data_source_type` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '数据源类型',
  `formula` varchar(500) NOT NULL DEFAULT '' COMMENT '公式',
  `parsed_formula` varchar(1000) NOT NULL DEFAULT '' COMMENT '解析后公式',
  `formula_description` varchar(1000) NOT NULL DEFAULT '' COMMENT '公式描述',
  `account_codes` varchar(1000) NOT NULL DEFAULT '' COMMENT '账套代码',
  `invoice_type` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '发票类型',
  `tax_rate` varchar(50) NOT NULL DEFAULT '' COMMENT '税率',
  `invoice_amount_type` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '发票账户类型',
  `model_ids` varchar(1000) NOT NULL DEFAULT '' COMMENT '模型IDs',
  `create_by` varchar(128) NOT NULL DEFAULT '' COMMENT '创建者',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00' COMMENT '创建时间',
  `update_by` varchar(128) NOT NULL DEFAULT '' COMMENT '更改者',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00' COMMENT '更改时间',
  `invoice_category` varchar(50) NOT NULL DEFAULT '' COMMENT '发票类型',
  `formula_data_source` varchar(1000) NOT NULL DEFAULT '' COMMENT '公式数据源',
  `validation` varchar(1000) NOT NULL DEFAULT '' COMMENT '验证信息',
  `parsed_validation` varchar(1000) NOT NULL DEFAULT '' COMMENT '解析验证信息',
  `validation_description` varchar(1000) NOT NULL DEFAULT '' COMMENT '验证信息描述',
  `voucher_keyword` varchar(1000) NOT NULL DEFAULT '' COMMENT '票证关键字',
  `cell_template_config_id` bigint(18) unsigned NOT NULL DEFAULT '0',
   `key_value_parsed_formula` varchar(1000) NOT NULL DEFAULT '' COMMENT '键值对公式解析',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_formula_block` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_formula_block` (
  `id` bigint(18) unsigned NOT NULL,
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  `report_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `cell_template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `formula_expression` varchar(1000) NOT NULL DEFAULT '',
  `data` varchar(200) NOT NULL DEFAULT '',
  `data_source_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `create_by` varchar(128) NOT NULL,
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_by` varchar(128) NOT NULL,
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_tax_payer_report_rule` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_tax_payer_report_rule` (
  `id` bigint(18) unsigned NOT NULL,
  `is_default` int(11) unsigned NOT NULL DEFAULT '0',
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  `tax_payer_type` int(11) unsigned NOT NULL DEFAULT '0',
  `template_group_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `organization_id` varchar(128) NOT NULL DEFAULT '',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `tax_payer_report_rule_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_tax_rule_setting` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_tax_rule_setting` (
  `id` bigint(18) unsigned NOT NULL,
  `name` varchar(50) NOT NULL DEFAULT '',
  `is_default` int(11) unsigned NOT NULL DEFAULT '0',
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  `group_name` varchar(50) NOT NULL DEFAULT '',
  `tax_base` varchar(1000) NOT NULL DEFAULT '',
  `tax_rate` decimal(18,4) NOT NULL DEFAULT '0.0000',
  `create_time` datetime NOT NULL,
  `update_time` datetime NOT NULL,
  `tax_rule_setting_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_tax_rule_setting_organization` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_tax_rule_setting_organization` (
  `id` bigint(18) unsigned NOT NULL,
  `tax_setting_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  `organization_id` varchar(128) NOT NULL DEFAULT '',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `tax_rule_setting_organization_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

/*Table structure for table `period_template` */


CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`period_template` (
  `id` bigint(18) unsigned NOT NULL,
  `period` int(11) unsigned NOT NULL DEFAULT '0',
  `name` varchar(1000) NOT NULL DEFAULT '',
  `code` varchar(1000) NOT NULL DEFAULT '',
  `path` varchar(1000) NOT NULL DEFAULT '',
  `report_type` int(11) unsigned NOT NULL DEFAULT '0',
  `template_group_id` varchar(128) NOT NULL DEFAULT '',
  `order_index` int(11) unsigned NOT NULL DEFAULT '0',
  `create_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `update_time` datetime NOT NULL DEFAULT '1970-01-01 08:00:00',
  `is_system_type` int(11) unsigned NOT NULL DEFAULT '0',
  `is_active_association` int(11) unsigned NOT NULL DEFAULT '0',
  `parent_id` varchar(128) NOT NULL DEFAULT '',
  `template_id` bigint(18) unsigned NOT NULL DEFAULT '0',
  `create_by` varchar(128) NOT NULL DEFAULT '',
  `update_by` varchar(128) NOT NULL DEFAULT '',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`modified_report_cell` (
   `id` bigint(18) unsigned NOT NULL,
   `report_id` bigint(18) unsigned NOT NULL,
   `row` int(11) unsigned NOT NULL,
   `col` int(11) unsigned NOT NULL,
   `original_value` varchar(1000) NOT NULL,
   `value` varchar(1000) NOT NULL,
   `related_cell_data_id` bigint(18) unsigned NOT NULL,
   `comment` varchar(4000) NOT NULL,
   `create_time` datetime NOT NULL,
   `update_time` datetime NOT NULL,
   `create_by` varchar(128) NOT NULL,
   `update_by` varchar(128) NOT NULL,
   PRIMARY KEY (`id`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`AssetsList` (
   `ID` varchar(128) NOT NULL,
   `AssetNumber` varchar(100) NOT NULL,
   `AssetGroupName` varchar(100) NOT NULL,
   `AssetDetailGroupID` varchar(128) DEFAULT NULL,
   `AssetDescription` text,
   `BuyDate` datetime DEFAULT NULL,
   `DepreciationDate` datetime DEFAULT NULL,
   `DepreciationPeriod` int(11) DEFAULT NULL,
   `AcquisitionValue` decimal(20,4) DEFAULT NULL,
   `AdjustmentValue` decimal(20,4) DEFAULT NULL,
   `DisposedDate` datetime DEFAULT NULL,
   `ResidualRate` decimal(18,5) DEFAULT NULL,
   `YearDepreciationAmount` decimal(20,4) DEFAULT NULL,
   `YearAdjustmentAmount` decimal(20,4) DEFAULT NULL,
   `YearEndValue` decimal(20,4) DEFAULT NULL,
   `Status` int(11) DEFAULT NULL,
   `AccountAcquisitionValue` decimal(20,4) DEFAULT NULL,
   `AccountMonthDepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '计算后每月折旧额',
   `AccountYearDepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '会计计算后年折旧额',
   `AccountTotalepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '会计计算累计折旧额',
   `TaxDepreciationPeriod` int(11) DEFAULT NULL COMMENT '税法折旧期限',
   `TaxToLastYearDepreciationPeriod` int(11) DEFAULT NULL COMMENT '截止去年累计折旧期间',
   `TaxToCurrentYearDepreciationPeriod` int(11) DEFAULT NULL,
   `TaxYearDepreciationPeriod` int(11) DEFAULT NULL,
   `TaxMonthDepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '月折旧额',
   `TaxToCurrentYearDepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '截止本年累计折旧额',
   `TaxCurrentYearDepreciationAmount` decimal(20,4) DEFAULT NULL COMMENT '本年折旧额',
   `TotalDifferenceAmount` decimal(20,4) DEFAULT NULL,
   `YearDifferenceAmount` decimal(20,4) DEFAULT NULL,
   `IsRetain` int(11) DEFAULT NULL,
   `CreateTime` datetime NOT NULL,
   `UpdateTime` datetime NOT NULL,
   `AssetType` int(11) DEFAULT NULL,
   PRIMARY KEY (`ID`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

 CREATE TABLE IF NOT EXISTS `DBKeyword_ProjectDbName`.`AssetGroupResult` (
   `ID` varchar(128) NOT NULL,
   `AssetName` varchar(200) NOT NULL,
   `AssetGroupID` varchar(128) NOT NULL,
   `AssetDetailGroupID` varchar(128) NOT NULL,
   `TaxDepreciationPeriod` int(11) DEFAULT NULL,
   `CreateTime` datetime NOT NULL,
   `UpdateTime` datetime NOT NULL,
   PRIMARY KEY (`ID`)
 ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

Insert INTO EnterpriseAccount
SELECT
    a.ID,
    a.Code,
    a.Name,
    a.ParentCode,
    a.FullName,
    a.AcctProp,
    a.SubProp,
    a.AcctLevel,
    a.Direction,
    a.IsLeaf,
    a.IsActive,
    a.EnglishName,
    b.StandardAccountCode AS StdCode,
    a.EnterpriseAccountSetID,
    0 AS IsDummy,
    0 AS IsInVoucher,
    a.CreatorID,
    a.UpdatorID,
    a.CreateTime,
    a.UpdateTime
FROM
    DBKeyword_AdminDbName.EnterpriseAccount a
        LEFT JOIN
    DBKeyword_AdminDbName.AccountMapping b ON a.EnterpriseAccountSetID = b.EnterpriseAccountSetID
        AND a.Code = b.EnterpriseAccountCode
        AND b.OrganizationID = 'DBKeyword_OrganizationID'
WHERE
    a.IsActive = 1
        AND a.EnterpriseAccountSetID = 'DBKeyword_EnterpriseAccountSetID';


SET SQL_MODE=@OLD_SQL_MODE;
SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS;
SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS;