181 lines
5.2 KiB
C#
181 lines
5.2 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using EveryThing.Models.Vehicle;
|
|
using Microsoft.AspNetCore.Http;
|
|
|
|
namespace EveryThing.Models.CodeTable
|
|
{
|
|
public enum CodeTableEmployeeGender
|
|
{
|
|
[Display(Name = "Moški")]
|
|
Male = 0,
|
|
|
|
[Display(Name = "Ženska")]
|
|
Female = 1
|
|
}
|
|
|
|
public class CodeTableEmployee
|
|
{
|
|
[Key]
|
|
public int IdEmployee { get; set; }
|
|
|
|
[Required]
|
|
[ForeignKey("Company")]
|
|
public int IdCompanyFk { get; set; }
|
|
|
|
[NotMapped]
|
|
public IFormFile ProfileImage { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Ime")]
|
|
public string FirstName { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Priimek")]
|
|
public string LastName { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Spol")]
|
|
public CodeTableEmployee Gender { get; set; }
|
|
|
|
[Required]
|
|
[DataType(DataType.Date)]
|
|
[DisplayFormat(DataFormatString = "{0:dd.MM.yyyy}", ApplyFormatInEditMode = true)]
|
|
[Display(Name = "Datum rojstva")]
|
|
public DateTime BirthDate { get; set; }
|
|
|
|
[ForeignKey("Job")]
|
|
[Display(Name = "Delovno mesto")]
|
|
public int IdJobFk { get; set; }
|
|
|
|
[ForeignKey("Departement")]
|
|
[Display(Name = "Oddelek")]
|
|
public int IdDepartementFk { get; set; }
|
|
|
|
[ForeignKey("Country")]
|
|
[Display(Name = "Država")]
|
|
public int IdCountryFk { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Mesto")]
|
|
public string City { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Ulica")]
|
|
public string Street { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Hišna št.")]
|
|
public string HouseNumber { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Poštna številka")]
|
|
public int PostNumber { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Pošta")]
|
|
public string Post { get; set; }
|
|
|
|
[ForeignKey("TemporaryCountry")]
|
|
[Display(Name = "Država")]
|
|
public int? IdTemporaryCountryFk { get; set; }
|
|
|
|
[Display(Name = "Mesto")]
|
|
public string TemporaryCity { get; set; }
|
|
|
|
[Display(Name = "Ulica")]
|
|
public string TemporaryStreet { get; set; }
|
|
|
|
[Display(Name = "Hišna št.")]
|
|
public string TemporaryHouseNumber { get; set; }
|
|
|
|
[Display(Name = "Poštna številka")]
|
|
public int TemporaryPostNumber { get; set; }
|
|
|
|
[Display(Name = "Pošta")]
|
|
public string TemporaryPost { get; set; }
|
|
|
|
[Required]
|
|
[ForeignKey("Citizenship")]
|
|
[Display(Name = "Državljanstvo")]
|
|
public int IdCitizenshipFk { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Številka EMŠO")]
|
|
public string CitizenIdNumber { get; set; }
|
|
|
|
[Display(Name = "Telefon")]
|
|
public string Telephone { get; set; }
|
|
|
|
[Display(Name = "Mobilni telefon")]
|
|
public string MobileTelephone { get; set; }
|
|
|
|
[Display(Name = "E-poštni naslov")]
|
|
[DataType(DataType.EmailAddress)]
|
|
public string Email { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Davčna številka")]
|
|
public int TaxNumber { get; set; }
|
|
|
|
[Required]
|
|
[Display(Name = "Bančni račun")]
|
|
public string BankAccount { get; set; }
|
|
|
|
[Required]
|
|
[DataType(DataType.Date)]
|
|
[DisplayFormat(DataFormatString = "{0:dd.MM.yyyy}", ApplyFormatInEditMode = true)]
|
|
[Display(Name = "Datum zaposlitve")]
|
|
public DateTime EmploymentDate { get; set; }
|
|
|
|
[Display(Name = "Urna postavka")]
|
|
public float HourlyWage { get; set; } = 0;
|
|
|
|
[Display(Name = "Opomba")]
|
|
public string Note { get; set; }
|
|
|
|
[Required]
|
|
public bool Active { get; set; }
|
|
|
|
//ForeignKey
|
|
public CodeTableCountry Citizenship { get; set; }
|
|
public CodeTableCompany Company { get; set; }
|
|
public CodeTableCountry Country { get; set; }
|
|
public CodeTableCountry TemporaryCountry { get; set; }
|
|
public CodeTableJob Job { get; set; }
|
|
public CodeTableDepartement Departement { get; set; }
|
|
|
|
//VehicleFueling
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleFueling> EmployeeVehicleFueling { get; set; }
|
|
|
|
//Incident
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleIncident> EmployeeIncident { get; set; }
|
|
|
|
//Issue
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleIssue> EmployeeIssue { get; set; }
|
|
|
|
//Note
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<GeneralNote> EmployeeNote { get; set; }
|
|
|
|
//VehicleBreakdown
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleBreakdown> EmployeeVehicleBreakdown { get; set; }
|
|
|
|
//VehicleDriver
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleDriver> EmployeeVehicleDriver { get; set; }
|
|
|
|
//VehicleDrive
|
|
[InverseProperty("Employee")]
|
|
public virtual ICollection<VehicleDrive> EmployeeVehicleDrive { get; set; }
|
|
}
|
|
}
|