using DatabaseImplement.Models;
using Microsoft.EntityFrameworkCore;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace DatabaseImplement
{
	public class Database : DbContext
	{
		protected override void OnConfiguring(DbContextOptionsBuilder optionsBuilder)
		{
			if (optionsBuilder.IsConfigured == false)
			{
				AppContext.SetSwitch("Npgsql.EnableLegacyTimestampBehavior", true);

                optionsBuilder.UseNpgsql("Server=192.168.191.42:32768;Database=gun_market;Username=postgres;Password=7355608;");
			}
			base.OnConfiguring(optionsBuilder);
		}

		public virtual DbSet<Role> Roles { get; set; } = null!;
		public virtual DbSet<User> Users { get; set; } = null!;
		public virtual DbSet<Sell> Sells { get; set; } = null!;
		public virtual DbSet<Purchase> Purchases { get; set; } = null!;
		public virtual DbSet<Product> Products { get; set; } = null!;
		public virtual DbSet<Supply> Supplies { get; set; } = null!;
		public virtual DbSet<SupplyProduct> SupplyProducts { get; set; } = null!;
		public virtual DbSet<Supplier> Suppliers { get; set; } = null!;
		public virtual DbSet<SupplierProduct> SupplierProducts { get; set; } = null!;
		public virtual DbSet<MediaFile> MediaFiles { get; set; } = null!;
		public virtual DbSet<PurchaseProducts> PurchaseProducts { get; set; } = null!;
        public virtual DbSet<SellProducts> SellProducts { get; set; } = null!;
        public virtual DbSet<SupplyDoc> SupplyDocs { get; set; } = null!;
    }
}