chore: add danak services and admin login

This commit is contained in:
mahyargdz
2025-01-25 16:52:54 +03:30
parent 8af72264e7
commit 6da4b5114c
35 changed files with 505 additions and 34 deletions
@@ -0,0 +1,52 @@
import { Column, Entity, ManyToOne, OneToMany } from "typeorm";
import { DanakServiceCategory } from "./danak-service-category.entity";
import { DanakServiceImage } from "./danak-service-image.entity";
import { BaseEntity } from "../../../common/entities/base.entity";
import { ServiceStatus } from "../enums/service-status.enum";
import { ServicesLanguage } from "../enums/services-language.enum";
@Entity()
export class DanakService extends BaseEntity {
@Column({ type: "varchar", length: 255, nullable: false })
name: string;
@Column({ type: "text", nullable: false })
description: string;
@Column({ type: "varchar", length: 255, nullable: false })
author: string;
@Column({ type: "timestamp", nullable: false, default: () => "CURRENT_TIMESTAMP" })
createDate: Date;
@Column({ type: "int", nullable: false, default: 0 })
userCount: number;
@Column({ type: "enum", enum: ServicesLanguage, nullable: false })
serviceLanguage: ServicesLanguage;
@Column({ type: "varchar", length: 150, nullable: false })
softwareLanguage: string;
@Column({ type: "text", nullable: false })
metaDescription: string;
@Column({ type: "enum", enum: ServiceStatus, nullable: false, default: ServiceStatus.IN_ACTIVE })
status: ServiceStatus;
@Column({ type: "varchar", length: 255, nullable: false })
link: string;
@Column({ type: "varchar", length: 255, nullable: false })
icon: string;
@OneToMany(() => DanakServiceImage, (danakServiceImage) => danakServiceImage.danakService, { eager: true })
images: DanakServiceImage[];
@ManyToOne(() => DanakServiceCategory, (danakServiceCategory) => danakServiceCategory.danakService, {
nullable: false,
onDelete: "RESTRICT",
})
category: DanakServiceCategory;
}