sozsoft-platform/configs/seeds/sql/object/Hr_T_Candidate.sql

58 lines
2.4 KiB
MySQL
Raw Normal View History

2026-10-04 08:14:38 +00:00
IF OBJECT_ID(N'[dbo].[Hr_T_Candidate]', 'U') IS NULL
BEGIN
CREATE TABLE [dbo].[Hr_T_Candidate]
(
[Id] uniqueidentifier NOT NULL DEFAULT NEWID(),
[TenantId] uniqueidentifier NULL,
[FirstName] nvarchar(128) NOT NULL,
[LastName] nvarchar(128) NOT NULL,
[Email] nvarchar(256) NOT NULL,
[PhoneNumber] nvarchar(32) NULL,
[Gender] nvarchar(16) NULL,
[BirthDate] date NULL,
[Country] nvarchar(64) NULL,
[City] nvarchar(128) NULL,
[Address] nvarchar(512) NULL,
[EducationLevel] nvarchar(32) NULL,
[School] nvarchar(256) NULL,
[Major] nvarchar(256) NULL,
[GraduationYear] int NULL,
[ExperienceYears] decimal(4,1) NULL,
[CurrentCompany] nvarchar(256) NULL,
[CurrentTitle] nvarchar(256) NULL,
[ExpectedSalary] decimal(18,2) NULL,
[CurrencyId] nvarchar(64) NULL,
[SourceId] uniqueidentifier NULL,
[LinkedInUrl] nvarchar(512) NULL,
[SkillIds] nvarchar(2048) NULL,
[Photo] nvarchar(MAX) NULL,
[CvDocument] nvarchar(MAX) NULL,
[Notes] nvarchar(MAX) NULL,
[KvkkConsent] bit NOT NULL,
[KvkkConsentDate] datetime NOT NULL,
[KvkkConsentMethod] nvarchar(32) NOT NULL DEFAULT 'Written',
[KvkkConsentDocument] nvarchar(MAX) NULL,
[UserId] uniqueidentifier NULL,
[IsActive] bit NOT NULL DEFAULT 1,
[CreationTime] datetime2 NOT NULL DEFAULT GETUTCDATE(),
[CreatorId] uniqueidentifier NULL,
[LastModificationTime] datetime2 NULL,
[LastModifierId] uniqueidentifier NULL,
[IsDeleted] bit NOT NULL DEFAULT 0,
[DeletionTime] datetime2 NULL,
[DeleterId] uniqueidentifier NULL,
CONSTRAINT [PK_Hr_T_Candidate] PRIMARY KEY NONCLUSTERED
(
[Id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON, OPTIMIZE_FOR_SEQUENTIAL_KEY = OFF) ON [PRIMARY]
) ON [PRIMARY]
END
GO
IF OBJECT_ID(N'[dbo].[CK_Hr_T_Candidate_KvkkConsent]', 'C') IS NULL
ALTER TABLE [dbo].[Hr_T_Candidate] ADD CONSTRAINT [CK_Hr_T_Candidate_KvkkConsent] CHECK ([KvkkConsent] = 1)
GO
IF NOT EXISTS (SELECT 1 FROM sys.indexes WHERE name = N'UX_Hr_T_Candidate_Email' AND object_id = OBJECT_ID(N'[dbo].[Hr_T_Candidate]'))
CREATE UNIQUE NONCLUSTERED INDEX [UX_Hr_T_Candidate_Email] ON [dbo].[Hr_T_Candidate] ([TenantId], [Email]) WHERE [IsDeleted] = 0
GO