diff --git a/DugunSalonu.csproj b/DugunSalonu.csproj
index e5c82cf..0b8c413 100644
--- a/DugunSalonu.csproj
+++ b/DugunSalonu.csproj
@@ -9,19 +9,14 @@
-
-
-
+
+
all
runtime; build; native; contentfiles; analyzers; buildtransitive
-
-
-
-
Form
diff --git a/Migrations/20250814210347_mig12.Designer.cs b/Migrations/20250814210347_mig12.Designer.cs
new file mode 100644
index 0000000..af2ba54
--- /dev/null
+++ b/Migrations/20250814210347_mig12.Designer.cs
@@ -0,0 +1,319 @@
+//
+using System;
+using DugunSalonu.Models;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+
+#nullable disable
+
+namespace DugunSalonu.Migrations
+{
+ [DbContext(typeof(dugunsalonuContext))]
+ [Migration("20250814210347_mig12")]
+ partial class mig12
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "9.0.8")
+ .HasAnnotation("Relational:MaxIdentifierLength", 63);
+
+ NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
+
+ modelBuilder.Entity("DugunSalonu.Models.Il", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("adi")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.HasKey("id");
+
+ b.ToTable("il");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Ilce", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("ILid")
+ .HasColumnType("integer")
+ .HasColumnName("ilid");
+
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.HasKey("id");
+
+ b.HasIndex("ILid");
+
+ b.ToTable("ilce");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Kullanici", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("admin")
+ .HasColumnType("boolean");
+
+ b.Property("aktif")
+ .HasColumnType("boolean");
+
+ b.Property("ceptel")
+ .HasMaxLength(10)
+ .HasColumnType("character varying(10)");
+
+ b.Property("eposta")
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("kullaniciadi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("parola")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property("soyadi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.HasKey("id");
+
+ b.ToTable("kullanici");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Organizasyon", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("aciklama")
+ .IsRequired()
+ .HasMaxLength(400)
+ .HasColumnType("character varying(400)");
+
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("ceptel")
+ .HasMaxLength(10)
+ .HasColumnType("integer");
+
+ b.Property("ceptel2")
+ .HasMaxLength(10)
+ .HasColumnType("integer");
+
+ b.Property("damatyore")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)");
+
+ b.Property("fiyat")
+ .HasColumnType("numeric(18,2)");
+
+ b.Property("gelinyore")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)");
+
+ b.Property("iptal")
+ .HasColumnType("integer");
+
+ b.Property("iptalaciklama")
+ .HasMaxLength(200)
+ .HasColumnType("character varying(200)");
+
+ b.Property("iptalkk")
+ .HasColumnType("integer");
+
+ b.Property("iptalkts")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property("kk")
+ .HasColumnType("integer");
+
+ b.Property("kts")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property("organizasyondurum")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("character varying(10)");
+
+ b.Property("organizasyonsaati")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property("organizasyontarihi")
+ .HasColumnType("date");
+
+ b.Property("rezervasyontarihi")
+ .HasColumnType("date");
+
+ b.Property("soyadi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("sozlesme")
+ .HasColumnType("bytea");
+
+ b.Property("sozlesmetarihi")
+ .HasColumnType("date");
+
+ b.HasKey("id");
+
+ b.ToTable("organizasyon");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Referans", b =>
+ {
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("aktif")
+ .HasColumnType("boolean");
+
+ b.Property("id")
+ .HasColumnType("integer");
+
+ b.Property("kk")
+ .HasColumnType("integer");
+
+ b.Property("kodu")
+ .IsRequired()
+ .HasMaxLength(20)
+ .HasColumnType("character varying(20)");
+
+ b.Property("kts")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property("turu")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.HasIndex("turu", "kodu")
+ .IsUnique();
+
+ b.ToTable("referans");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Salon", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("CepTel")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("character varying(10)");
+
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(150)
+ .HasColumnType("character varying(150)");
+
+ b.Property("adres")
+ .HasMaxLength(250)
+ .HasColumnType("character varying(250)");
+
+ b.Property("eposta")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property("ilceid")
+ .HasColumnType("integer");
+
+ b.Property("ilid")
+ .HasColumnType("integer");
+
+ b.Property("telefon")
+ .HasColumnType("text");
+
+ b.Property("vergidairesi")
+ .HasColumnType("text");
+
+ b.Property("verginumarasi")
+ .HasColumnType("text");
+
+ b.Property("webadres")
+ .HasColumnType("text");
+
+ b.HasKey("id");
+
+ b.HasIndex("ilid");
+
+ b.ToTable("salon");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Ilce", b =>
+ {
+ b.HasOne("DugunSalonu.Models.Il", "Il")
+ .WithMany("ilceler")
+ .HasForeignKey("ILid")
+ .OnDelete(DeleteBehavior.Cascade)
+ .IsRequired();
+
+ b.Navigation("Il");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Salon", b =>
+ {
+ b.HasOne("DugunSalonu.Models.Il", "il")
+ .WithMany("salons")
+ .HasForeignKey("ilid");
+
+ b.Navigation("il");
+ });
+
+ modelBuilder.Entity("DugunSalonu.Models.Il", b =>
+ {
+ b.Navigation("ilceler");
+
+ b.Navigation("salons");
+ });
+#pragma warning restore 612, 618
+ }
+ }
+}
diff --git a/Migrations/20250814210347_mig12.cs b/Migrations/20250814210347_mig12.cs
new file mode 100644
index 0000000..321204e
--- /dev/null
+++ b/Migrations/20250814210347_mig12.cs
@@ -0,0 +1,55 @@
+using System;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Npgsql.EntityFrameworkCore.PostgreSQL.Metadata;
+
+#nullable disable
+
+namespace DugunSalonu.Migrations
+{
+ ///
+ public partial class mig12 : Migration
+ {
+ ///
+ protected override void Up(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.CreateTable(
+ name: "organizasyon",
+ columns: table => new
+ {
+ id = table.Column(type: "integer", nullable: false)
+ .Annotation("Npgsql:ValueGenerationStrategy", NpgsqlValueGenerationStrategy.IdentityByDefaultColumn),
+ rezervasyontarihi = table.Column(type: "date", nullable: false),
+ sozlesmetarihi = table.Column(type: "date", nullable: false),
+ organizasyontarihi = table.Column(type: "date", nullable: false),
+ organizasyonsaati = table.Column(type: "text", nullable: false),
+ adi = table.Column(type: "character varying(50)", maxLength: 50, nullable: false),
+ soyadi = table.Column(type: "character varying(50)", maxLength: 50, nullable: false),
+ ceptel = table.Column(type: "integer", maxLength: 10, nullable: false),
+ ceptel2 = table.Column(type: "integer", maxLength: 10, nullable: true),
+ gelinyore = table.Column(type: "character varying(30)", maxLength: 30, nullable: false),
+ damatyore = table.Column(type: "character varying(30)", maxLength: 30, nullable: false),
+ aciklama = table.Column(type: "character varying(400)", maxLength: 400, nullable: false),
+ organizasyondurum = table.Column(type: "character varying(10)", maxLength: 10, nullable: false),
+ fiyat = table.Column(type: "numeric(18,2)", nullable: false),
+ kts = table.Column(type: "timestamp with time zone", nullable: false),
+ kk = table.Column(type: "integer", nullable: false),
+ sozlesme = table.Column(type: "bytea", nullable: true),
+ iptal = table.Column(type: "integer", nullable: true),
+ iptalkk = table.Column(type: "integer", nullable: true),
+ iptalkts = table.Column(type: "timestamp with time zone", nullable: true),
+ iptalaciklama = table.Column(type: "character varying(200)", maxLength: 200, nullable: true)
+ },
+ constraints: table =>
+ {
+ table.PrimaryKey("PK_organizasyon", x => x.id);
+ });
+ }
+
+ ///
+ protected override void Down(MigrationBuilder migrationBuilder)
+ {
+ migrationBuilder.DropTable(
+ name: "organizasyon");
+ }
+ }
+}
diff --git a/Migrations/dugunsalonuContextModelSnapshot.cs b/Migrations/dugunsalonuContextModelSnapshot.cs
index a253d6f..aa3a46b 100644
--- a/Migrations/dugunsalonuContextModelSnapshot.cs
+++ b/Migrations/dugunsalonuContextModelSnapshot.cs
@@ -17,7 +17,7 @@ namespace DugunSalonu.Migrations
{
#pragma warning disable 612, 618
modelBuilder
- .HasAnnotation("ProductVersion", "9.0.7")
+ .HasAnnotation("ProductVersion", "9.0.8")
.HasAnnotation("Relational:MaxIdentifierLength", 63);
NpgsqlModelBuilderExtensions.UseIdentityByDefaultColumns(modelBuilder);
@@ -109,6 +109,95 @@ namespace DugunSalonu.Migrations
b.ToTable("kullanici");
});
+ modelBuilder.Entity("DugunSalonu.Models.Organizasyon", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("integer");
+
+ NpgsqlPropertyBuilderExtensions.UseIdentityByDefaultColumn(b.Property("id"));
+
+ b.Property("aciklama")
+ .IsRequired()
+ .HasMaxLength(400)
+ .HasColumnType("character varying(400)");
+
+ b.Property("adi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("ceptel")
+ .HasMaxLength(10)
+ .HasColumnType("integer");
+
+ b.Property("ceptel2")
+ .HasMaxLength(10)
+ .HasColumnType("integer");
+
+ b.Property("damatyore")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)");
+
+ b.Property("fiyat")
+ .HasColumnType("numeric(18,2)");
+
+ b.Property("gelinyore")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("character varying(30)");
+
+ b.Property("iptal")
+ .HasColumnType("integer");
+
+ b.Property("iptalaciklama")
+ .HasMaxLength(200)
+ .HasColumnType("character varying(200)");
+
+ b.Property("iptalkk")
+ .HasColumnType("integer");
+
+ b.Property("iptalkts")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property("kk")
+ .HasColumnType("integer");
+
+ b.Property("kts")
+ .HasColumnType("timestamp with time zone");
+
+ b.Property("organizasyondurum")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("character varying(10)");
+
+ b.Property("organizasyonsaati")
+ .IsRequired()
+ .HasColumnType("text");
+
+ b.Property("organizasyontarihi")
+ .HasColumnType("date");
+
+ b.Property("rezervasyontarihi")
+ .HasColumnType("date");
+
+ b.Property("soyadi")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("character varying(50)");
+
+ b.Property("sozlesme")
+ .HasColumnType("bytea");
+
+ b.Property("sozlesmetarihi")
+ .HasColumnType("date");
+
+ b.HasKey("id");
+
+ b.ToTable("organizasyon");
+ });
+
modelBuilder.Entity("DugunSalonu.Models.Referans", b =>
{
b.Property("adi")
diff --git a/Models/Organizasyon.cs b/Models/Organizasyon.cs
new file mode 100644
index 0000000..0a37795
--- /dev/null
+++ b/Models/Organizasyon.cs
@@ -0,0 +1,68 @@
+using System;
+using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
+using System.ComponentModel.Design.Serialization;
+using System.Data.SqlTypes;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+
+namespace DugunSalonu.Models
+{
+ public class Organizasyon
+ {
+ [Key]
+ public int id { get; set; }
+ [Required]
+ public required DateOnly rezervasyontarihi { get; set; } = DateOnly.FromDateTime(DateTime.Now);
+ [Required]
+ public required DateOnly sozlesmetarihi { get; set; }
+ [Required]
+ public required DateOnly organizasyontarihi { get; set; }
+ [Required]
+ public required string organizasyonsaati { get; set; } //referans tablosundan alınacak.
+ [Required]
+ [MaxLength(50)]
+ public required string adi { get; set; }
+ [Required]
+ [MaxLength(50)]
+ public required string soyadi { get; set; }
+ public string adisoyadi { get { return $"{adi} {soyadi}"; } }
+ [Required]
+ [MaxLength(10)]
+ [MinLength(10)]
+ public required int ceptel { get; set; }
+ [MaxLength(10)]
+ [MinLength(10)]
+ public int? ceptel2 { get; set; }
+ [Required]
+ [MaxLength(30)]
+ public required string gelinyore { get; set; }
+ [Required]
+ [MaxLength(30)]
+ public required string damatyore { get; set; }
+ [Required]
+ [MaxLength(400)]
+ public required string aciklama { get; set; }
+ [Required]
+ [MaxLength(10)]
+ public required string organizasyondurum { get; set; } // referans tablosundan alınacak.
+ [Required]
+ public required Decimal fiyat { get; set; }
+
+ [Required]
+ public required DateTime kts { get; set; } = DateTime.UtcNow;
+ [Required]
+ public required int kk { get; set; }
+
+ public byte[]? sozlesme { get; set; }
+
+ public int? iptal { get; set; }
+ public int? iptalkk { get; set; }
+ public DateTime? iptalkts { get; set; }
+ [MaxLength(200)]
+ public string? iptalaciklama { get; set; }
+
+
+ }
+}
diff --git a/Models/dugunsalonuContext.cs b/Models/dugunsalonuContext.cs
index a275a6a..66db6e4 100644
--- a/Models/dugunsalonuContext.cs
+++ b/Models/dugunsalonuContext.cs
@@ -19,6 +19,7 @@ namespace DugunSalonu.Models
public DbSet referans { get; set; }
+ public DbSet organizasyon { get; set; }
protected override void OnModelCreating(ModelBuilder modelBuilder)
@@ -29,6 +30,13 @@ namespace DugunSalonu.Models
modelBuilder.Entity().HasNoKey();
modelBuilder.Entity().HasMany(i => i.ilceler);
modelBuilder.Entity().HasOne(i => i.Il);
+
+ //fiyat için oluşturulan alanın tipini belirtmek için yapıldı.
+ modelBuilder.Entity(entity =>
+ {
+ entity.Property(e => e.fiyat)
+ .HasColumnType("numeric(18,2)"); // 18 basamak, 2 ondalık
+ });
/*
// kts alanı için default değer
modelBuilder.Entity()