data-source.ts 1.5 KB

1234567891011121314151617181920212223242526272829303132333435
  1. import "reflect-metadata"
  2. import { DataSource } from "typeorm"
  3. import process from 'node:process'
  4. // 实体类导入
  5. import { UserEntity as User } from "./modules/users/user.entity"
  6. import { Role } from "./modules/users/role.entity"
  7. import { File } from "./modules/files/file.entity"
  8. import { Advertisement } from "./modules/advertisements/advertisement.entity"
  9. import { AdvertisementType } from "./modules/advertisements/advertisement-type.entity"
  10. import { GoodsCategory } from "./modules/goods/goods-category.entity"
  11. import { Goods } from "./modules/goods/goods.entity"
  12. import { City } from "./modules/system/city.entity"
  13. import { Config } from "./modules/system/config.entity"
  14. import { ExpressCompany } from "./modules/logistics/express-company.entity"
  15. import { Organization } from "./modules/organization/organization.entity"
  16. import { Supplier } from "./modules/supplier/supplier.entity"
  17. import { Card } from "./modules/card/card.entity"
  18. import { Agent } from "./modules/agent/agent.entity"
  19. export const AppDataSource = new DataSource({
  20. type: "mysql",
  21. host: process.env.DB_HOST || "localhost",
  22. port: parseInt(process.env.DB_PORT || "3306"),
  23. username: process.env.DB_USERNAME || "root",
  24. password: process.env.DB_PASSWORD || "",
  25. database: process.env.DB_DATABASE || "d8dai",
  26. entities: [
  27. User, Role, File, Advertisement, AdvertisementType,
  28. GoodsCategory, Goods, City, Config, ExpressCompany, Organization, Supplier, Card, Agent,
  29. ],
  30. migrations: [],
  31. synchronize: process.env.DB_SYNCHRONIZE !== "false",
  32. logging: process.env.DB_LOGGING === "true",
  33. });