diff --git a/Company.Domain/ClassificationSchemeAgg/ClassificationGroupSalary.cs b/Company.Domain/ClassificationSchemeAgg/ClassificationGroupSalary.cs
index cad3e0f1..79c1b67c 100644
--- a/Company.Domain/ClassificationSchemeAgg/ClassificationGroupSalary.cs
+++ b/Company.Domain/ClassificationSchemeAgg/ClassificationGroupSalary.cs
@@ -16,7 +16,7 @@ public class ClassificationGroupSalary : EntityBase
///
///
///
- public ClassificationGroupSalary(long classificationGroupId, string groupNo, double groupSalary, DateTime startDate, DateTime endDate, int year)
+ public ClassificationGroupSalary(long classificationGroupId, string groupNo, double groupSalary, DateTime startDate, DateTime endDate, int year, long schemeId)
{
ClassificationGroupId = classificationGroupId;
GroupNo = groupNo;
@@ -24,6 +24,7 @@ public class ClassificationGroupSalary : EntityBase
StartDate = startDate;
EndDate = endDate;
Year = year;
+ SchemeId = schemeId;
}
///
@@ -57,22 +58,22 @@ public class ClassificationGroupSalary : EntityBase
///
public int Year { get; private set; }
+ public long SchemeId { get; private set; }
+
public ClassificationGroup ClassificationGroup { get; set; }
///
/// ویرایش دستمزد گروه
///
- ///
- ///
+
///
///
///
///
- public void Edit(long classificationGroupId, string groupNo, double groupSalary, DateTime startDate, DateTime endDate, int year)
+ public void Edit(double groupSalary, DateTime startDate, DateTime endDate, int year)
{
- ClassificationGroupId = classificationGroupId;
- GroupNo = groupNo;
+
GroupSalary = groupSalary;
StartDate = startDate;
EndDate = endDate;
diff --git a/Company.Domain/ClassificationSchemeAgg/ClassificationRialCoefficient.cs b/Company.Domain/ClassificationSchemeAgg/ClassificationRialCoefficient.cs
index e861bc1a..726bfb0b 100644
--- a/Company.Domain/ClassificationSchemeAgg/ClassificationRialCoefficient.cs
+++ b/Company.Domain/ClassificationSchemeAgg/ClassificationRialCoefficient.cs
@@ -56,9 +56,9 @@ public class ClassificationRialCoefficient : EntityBaseWithoutCreationDate
///
///
///
- public void Edit(long classificationSchemeId, double rialCoefficient, DateTime startDate, DateTime endDate, int year)
+ public void Edit(double rialCoefficient, DateTime startDate, DateTime endDate, int year)
{
- ClassificationSchemeId = classificationSchemeId;
+
RialCoefficient = rialCoefficient;
StartDate = startDate;
EndDate = endDate;
diff --git a/Company.Domain/ClassificationSchemeAgg/IClassificationGroupSalariesRepository.cs b/Company.Domain/ClassificationSchemeAgg/IClassificationGroupSalariesRepository.cs
index cdf099d2..fc026a2c 100644
--- a/Company.Domain/ClassificationSchemeAgg/IClassificationGroupSalariesRepository.cs
+++ b/Company.Domain/ClassificationSchemeAgg/IClassificationGroupSalariesRepository.cs
@@ -15,6 +15,15 @@ public interface IClassificationGroupSalariesRepository : IRepository createClassificationGroupSalary);
+ ///
+ /// دریافت دستمزدها و ضریب ریالی برای مودال ویرایش
+ ///
+ ///
+ ///
+ ///
+ ///
+ Task GetEditSalariesData(long schemeId, string startDate, string endDate);
+
///
/// لیست دستمزدها بر اساس تاریخ و سال برای تب دستمزدها
///
diff --git a/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationGroupSalaryAndRialCoeficient.cs b/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationGroupSalaryAndRialCoeficient.cs
index de6ebaa1..7baadf53 100644
--- a/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationGroupSalaryAndRialCoeficient.cs
+++ b/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationGroupSalaryAndRialCoeficient.cs
@@ -1,6 +1,7 @@
using _0_Framework.Application.Enums;
using System;
using System.Collections.Generic;
+using System.ComponentModel.DataAnnotations;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
@@ -62,12 +63,14 @@ public class EditClassificationGroupSalaryAndRialCoefficient : CreateClassificat
/// تاریخ شروع
/// شمسی
///
+ [DataType(DataType.Text)]
public string StartDateFa { get; set; }
///
/// تاریخ پایان
/// شمسی
///
+ [DataType(DataType.Text)]
public string EndDateFa { get; set; }
///
@@ -91,6 +94,7 @@ public class SalaryAndRialCoefficientModel
/// تاریخ شروع
/// شمسی
///
+ [DataType(DataType.Text)]
public string StartDateFa { get; set; }
///
@@ -103,6 +107,7 @@ public class SalaryAndRialCoefficientModel
/// تاریخ پایان
/// شمسی
///
+ [DataType(DataType.Text)]
public string EndDateFa { get; set; }
///
@@ -133,6 +138,11 @@ public class SalaryAndRialCoefficientModel
///
public TypeOfCoefficient TypeOfCoefficient { get; set; }
+ ///
+ /// آی دی ضریب ریالی
+ ///
+ public long CoefficientId { get; set; }
+
///
/// لیست دستمزدها و ضرایب بر اساس سال
///
@@ -170,16 +180,25 @@ public class SalaryAndRialCoefficientTabDataList
/// تاریخ شروع
/// شمسی
///
+ [DataType(DataType.Text)]
public string StartDateFa { get; set; }
///
/// تاریخ پایان
/// شمسی
///
+ [DataType(DataType.Text)]
public string EndDateFa { get; set; }
///
/// سال
///
public int Year { get; set; }
-}
\ No newline at end of file
+
+ ///
+ /// ضریب ریالی
+ /// string
+ ///
+ public string RialCoefficientStr { get; set; }
+}
+
diff --git a/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationScheme.cs b/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationScheme.cs
index 49f67be2..e740d97b 100644
--- a/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationScheme.cs
+++ b/CompanyManagment.App.Contracts/ClassificationScheme/CreateClassificationScheme.cs
@@ -1,5 +1,6 @@
using _0_Framework.Application.Enums;
using System;
+using System.ComponentModel.DataAnnotations;
namespace CompanyManagment.App.Contracts.ClassificationScheme;
@@ -46,6 +47,7 @@ public class CreateClassificationScheme
///
/// شماره همراه طراح
///
+ [RegularExpression("^[0-9]*$", ErrorMessage = "لطفا فقط عدد وارد کنید")]
public string DesignerPhone { get; set; }
///
diff --git a/CompanyManagment.App.Contracts/ClassificationScheme/IClassificationSchemeApplication.cs b/CompanyManagment.App.Contracts/ClassificationScheme/IClassificationSchemeApplication.cs
index 82d53ce7..a554c76f 100644
--- a/CompanyManagment.App.Contracts/ClassificationScheme/IClassificationSchemeApplication.cs
+++ b/CompanyManagment.App.Contracts/ClassificationScheme/IClassificationSchemeApplication.cs
@@ -94,7 +94,20 @@ public interface IClassificationSchemeApplication
+ ///
+ /// دریافت دستمزدها و ضریب ریالی برای مودال ویرایش
+ ///
+ ///
+ ///
+ ///
+ ///
+ Task GetEditSalariesData(long schemeId, string startDate, string endDate);
+ ///
+ /// ثبت ویرایش دستمزدها و ضریب
+ ///
+ ///
+ ///
+ Task EditGroupSalaryAndCoefficient(SalaryAndRialCoefficientModel command);
-
}
\ No newline at end of file
diff --git a/CompanyManagment.Application/ClassificationSchemeApplication.cs b/CompanyManagment.Application/ClassificationSchemeApplication.cs
index f238d0b1..fc3f9d08 100644
--- a/CompanyManagment.Application/ClassificationSchemeApplication.cs
+++ b/CompanyManagment.Application/ClassificationSchemeApplication.cs
@@ -34,22 +34,23 @@ public class ClassificationSchemeApplication : IClassificationSchemeApplication
{
var op = new OperationResult();
- try
- {
- command.ExecutionDateGr = command.ExecutionDateFa.ToGeorgianDateTime();
- command.IncludingDateGr = command.IncludingDateFa.ToGeorgianDateTime();
- }
- catch (Exception e)
- {
- return op.Failed("تاریخ به درستی وارد نشده است");
- }
+
#region Validation
-
+ if (!command.ExecutionDateFa.TryToGeorgianDateTime(out var executionDateGr))
+ {
+ return op.Failed("تاریخ اجرا صحیح نمی باشد");
+ }
+ if (!command.IncludingDateFa.TryToGeorgianDateTime(out var includingDateGr))
+ {
+ return op.Failed("تاریخ شمول صحیح نمی باشد");
+ }
+
+
#endregion
//ایجاد طرح
- var create = new ClassificationScheme(command.IncludingDateGr, command.ExecutionDateGr,
+ var create = new ClassificationScheme(includingDateGr, executionDateGr,
command.DesignerFullName, command.DesignerPhone, command.WorkshopId, command.TypeOfCoefficient);
_classificationSchemeRepository.Create(create);
await _classificationSchemeRepository.SaveChangesAsync();
@@ -94,25 +95,24 @@ public class ClassificationSchemeApplication : IClassificationSchemeApplication
{
var op = new OperationResult();
- try
- {
- command.ExecutionDateGr = command.ExecutionDateFa.ToGeorgianDateTime();
- command.IncludingDateGr = command.IncludingDateFa.ToGeorgianDateTime();
- }
- catch (Exception e)
- {
- return op.Failed("تاریخ به درستی وارد نشده است");
- }
+
#region Validation
-
-
- #endregion
+ if (!command.ExecutionDateFa.TryToGeorgianDateTime(out var executionDateGr))
+ {
+ return op.Failed("تاریخ اجرا صحیح نمی باشد");
+ }
+ if (!command.IncludingDateFa.TryToGeorgianDateTime(out var includingDateGr))
+ {
+ return op.Failed("تاریخ شمول صحیح نمی باشد");
+ }
var scheme = _classificationSchemeRepository.Get(command.Id);
if (scheme == null)
return op.Failed("رکورد مورد نظر وجود ندارد");
+ #endregion
- scheme.Edit(command.IncludingDateGr,command.ExecutionDateGr,command.DesignerFullName,command.DesignerPhone,command.TypeOfCoefficient);
+
+ scheme.Edit(includingDateGr, executionDateGr, command.DesignerFullName,command.DesignerPhone,command.TypeOfCoefficient);
await _classificationSchemeRepository.SaveChangesAsync();
return op.Succcedded();
}
@@ -170,34 +170,46 @@ public class ClassificationSchemeApplication : IClassificationSchemeApplication
if (string.IsNullOrWhiteSpace(command.StartDateFa) || string.IsNullOrWhiteSpace(command.StartDateFa))
return op.Failed("تاریخ شروع و پایان نمی توانند خالی باشند");
- if (command.TypeOfCoefficient == TypeOfCoefficient.RialCoefficient && string.IsNullOrWhiteSpace(command.RialCoefficientStr))
+
+
+ if (command.TypeOfCoefficient == TypeOfCoefficient.RialCoefficient && command.RialCoefficient == 0)
return op.Failed("ضریب ریالی وارد نشده است");
- if (command.SalariesAndCoefficientList.Any(x=> string.IsNullOrWhiteSpace(x.GroupSalaryStr)))
+ if (command.SalariesAndCoefficientList.Any(x=> string.IsNullOrWhiteSpace(x.GroupSalaryStr) || x.GroupSalaryStr =="0"))
return op.Failed("دستمزد تمامی گروه ها می بایست تعیین شود");
-
- #endregion
- try
+
+ if (!command.StartDateFa.TryToGeorgianDateTime(out var startDate))
{
- command.StartDate = command.StartDateFa.ToGeorgianDateTime();
- command.EndDate = command.EndDateFa.ToGeorgianDateTime();
+ return op.Failed("تاریخ شروع وارد شده صحیح نمی باشد");
}
- catch (Exception e)
+ if (!command.EndDateFa.TryToGeorgianDateTime(out var endDate))
{
- return op.Failed("فرمت تاریخ اشتباه است");
+ return op.Failed("تاریخ پایان وارد شده صحیح نمی باشد");
}
+ if (_classificationGroupSalariesRepository.Exists(x => x.StartDate <= endDate && x.EndDate >= startDate && x.SchemeId == command.SchemeId))
+ {
+ return op.Failed("بازه تاریخ وارد شده با داده های ذخیره شده قبل تداخل دارد");
+
+ }
var year = Convert.ToInt32(command.StartDateFa.Substring(0, 4));
+ var endDateYear = Convert.ToInt32(command.EndDateFa.Substring(0, 4));
+ if(year != endDateYear)
+ return op.Failed("سال تاریخ شروع از سال تاریخ پایان متفاوت است");
+ #endregion
+
+
+
var createSalaries = new List();
foreach (var item in command.SalariesAndCoefficientList)
{
item.GroupSalary = item.GroupSalaryStr.MoneyToDouble();
- var create = new ClassificationGroupSalary(item.ClassificationGroupId,item.GroupNo,item.GroupSalary,command.StartDate,command.EndDate, year);
+ var create = new ClassificationGroupSalary(item.ClassificationGroupId,item.GroupNo,item.GroupSalary,startDate, endDate, year, command.SchemeId);
createSalaries.Add(create);
}
@@ -207,10 +219,10 @@ public class ClassificationSchemeApplication : IClassificationSchemeApplication
{
try
{
- command.RialCoefficient = command.RialCoefficientStr.MoneyToDouble();
+ command.RialCoefficient = command.RialCoefficient;
await _classificationRialCoefficientRepository.CreateAsync(new ClassificationRialCoefficient(command.SchemeId,
- command.RialCoefficient, command.StartDate, command.EndDate, year));
+ command.RialCoefficient, startDate, endDate, year));
await _classificationRialCoefficientRepository.SaveChangesAsync();
}
catch (Exception e)
@@ -222,4 +234,73 @@ public class ClassificationSchemeApplication : IClassificationSchemeApplication
op.SendId = command.SchemeId;
return op.Succcedded();
}
+
+ public async Task GetEditSalariesData(long schemeId, string startDate, string endDate)
+ {
+ return await _classificationGroupSalariesRepository.GetEditSalariesData(schemeId, startDate, endDate);
+ }
+
+ public async Task EditGroupSalaryAndCoefficient(SalaryAndRialCoefficientModel command)
+ {
+ var op = new OperationResult();
+ #region Validation
+
+ if (string.IsNullOrWhiteSpace(command.StartDateFa) || string.IsNullOrWhiteSpace(command.StartDateFa))
+ return op.Failed("تاریخ شروع و پایان نمی توانند خالی باشند");
+
+
+ if (command.TypeOfCoefficient == TypeOfCoefficient.RialCoefficient && command.RialCoefficient == 0)
+ return op.Failed("ضریب ریالی وارد نشده است");
+
+
+ if (command.SalariesAndCoefficientList.Any(x => string.IsNullOrWhiteSpace(x.GroupSalaryStr) || x.GroupSalaryStr == "0"))
+ return op.Failed("دستمزد تمامی گروه ها می بایست تعیین شود");
+
+
+ if (!command.StartDateFa.TryToGeorgianDateTime(out var startDate))
+ {
+ return op.Failed("تاریخ شروع وارد شده صحیح نمی باشد");
+ }
+ if (!command.EndDateFa.TryToGeorgianDateTime(out var endDate))
+ {
+ return op.Failed("تاریخ پایان وارد شده صحیح نمی باشد");
+ }
+
+ var salariesId = command.SalariesAndCoefficientList.Select(x => x.Id).ToList();
+ if (_classificationGroupSalariesRepository.Exists(x => x.StartDate <= endDate && x.EndDate >= startDate && x.SchemeId == command.SchemeId && !salariesId.Contains(x.id)))
+ {
+ return op.Failed("بازه تاریخ وارد شده با داده های ذخیره شده قبل تداخل دارد");
+
+ }
+
+ var year = Convert.ToInt32(command.StartDateFa.Substring(0, 4));
+
+ var endDateYear = Convert.ToInt32(command.EndDateFa.Substring(0, 4));
+ if (year != endDateYear)
+ return op.Failed("سال تاریخ شروع از سال تاریخ پایان متفاوت است");
+ #endregion
+
+
+
+ foreach (var item in command.SalariesAndCoefficientList)
+ {
+ var editSalary = _classificationGroupSalariesRepository.Get(item.Id);
+
+ item.GroupSalary = item.GroupSalaryStr.MoneyToDouble();
+
+ editSalary.Edit(item.GroupSalary, startDate, endDate, year);
+ await _classificationGroupSalariesRepository.SaveChangesAsync();
+
+ }
+
+ if (command.TypeOfCoefficient == TypeOfCoefficient.RialCoefficient)
+ {
+ var editRialCoefficient = _classificationRialCoefficientRepository.Get(command.CoefficientId);
+ editRialCoefficient.Edit(command.RialCoefficient, startDate, endDate, year);
+ await _classificationRialCoefficientRepository.SaveChangesAsync();
+
+ }
+
+ return op.Succcedded();
+ }
}
\ No newline at end of file
diff --git a/CompanyManagment.Application/InsuranceListApplication.cs b/CompanyManagment.Application/InsuranceListApplication.cs
index 2c0e032e..cec2f1b2 100644
--- a/CompanyManagment.Application/InsuranceListApplication.cs
+++ b/CompanyManagment.Application/InsuranceListApplication.cs
@@ -1868,6 +1868,10 @@ public class InsuranceListApplication : IInsuranceListApplication
bool isManager = jobId is 10 or 16 or 17 or 18 or 3498;
if (isManager && !includeStatus)
+ return 0;
+
+ //پرسنل استثناء سیدعسکر موسوی زاده - فروشگاه ولی عصر
+ if (employeeId == 1496)
return 0;
//پرسنل استثناء
if (employeeId == 42783)
diff --git a/CompanyManagment.EFCore/Migrations/20251023161727_SchemeIdAdded.Designer.cs b/CompanyManagment.EFCore/Migrations/20251023161727_SchemeIdAdded.Designer.cs
new file mode 100644
index 00000000..a4d6cb87
--- /dev/null
+++ b/CompanyManagment.EFCore/Migrations/20251023161727_SchemeIdAdded.Designer.cs
@@ -0,0 +1,10524 @@
+//
+using System;
+using System.Collections.Generic;
+using CompanyManagment.EFCore;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
+using Microsoft.EntityFrameworkCore.Migrations;
+using Microsoft.EntityFrameworkCore.Storage.ValueConversion;
+
+#nullable disable
+
+namespace CompanyManagment.EFCore.Migrations
+{
+ [DbContext(typeof(CompanyContext))]
+ [Migration("20251023161727_SchemeIdAdded")]
+ partial class SchemeIdAdded
+ {
+ ///
+ protected override void BuildTargetModel(ModelBuilder modelBuilder)
+ {
+#pragma warning disable 612, 618
+ modelBuilder
+ .HasAnnotation("ProductVersion", "8.0.10")
+ .HasAnnotation("Relational:MaxIdentifierLength", 128);
+
+ SqlServerModelBuilderExtensions.UseIdentityColumns(modelBuilder);
+
+ modelBuilder.Entity("Company.Domain.AdminMonthlyOverviewAgg.AdminMonthlyOverview", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Month")
+ .HasColumnType("int");
+
+ b.Property("Status")
+ .IsRequired()
+ .HasMaxLength(155)
+ .HasColumnType("nvarchar(155)");
+
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.Property("Year")
+ .HasColumnType("int");
+
+ b.HasKey("id");
+
+ b.ToTable("AdminMonthlyOverviews");
+ });
+
+ modelBuilder.Entity("Company.Domain.AndroidApkVersionAgg.AndroidApkVersion", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("IsActive")
+ .IsRequired()
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("Path")
+ .HasMaxLength(255)
+ .HasColumnType("nvarchar(255)");
+
+ b.Property("Title")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("VersionCode")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("VersionName")
+ .HasMaxLength(35)
+ .HasColumnType("nvarchar(35)");
+
+ b.HasKey("id");
+
+ b.ToTable("AndroidApkVersions", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.BankAgg.Bank", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("BankLogoMediaId")
+ .HasColumnType("bigint");
+
+ b.Property("BankName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.HasKey("id");
+
+ b.ToTable("Banks", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.BillAgg.EntityBill", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("Appointed")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Contact")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Description")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("IsActiveString")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("ProcessingStage")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("SubjectBill")
+ .IsRequired()
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.HasKey("id");
+
+ b.ToTable("TextManager_Bill", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.Board.Board", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("BoardChairman")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("BoardType_Id")
+ .HasColumnType("int");
+
+ b.Property("Branch")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("DisputeResolutionPetitionDate")
+ .HasColumnType("datetime2");
+
+ b.Property("ExpertReport")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("File_Id")
+ .HasColumnType("bigint");
+
+ b.HasKey("id");
+
+ b.HasIndex("BoardType_Id");
+
+ b.HasIndex("File_Id");
+
+ b.ToTable("Boards", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.BoardType.BoardType", b =>
+ {
+ b.Property("Id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("int");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("Id"));
+
+ b.Property("Title")
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("Id");
+
+ b.ToTable("BoardTypes", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ChapterAgg.EntityChapter", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("Chapter")
+ .IsRequired()
+ .HasMaxLength(60)
+ .HasColumnType("nvarchar(60)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("IsActiveString")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Subtitle_Id")
+ .HasColumnType("bigint");
+
+ b.HasKey("id");
+
+ b.HasIndex("Subtitle_Id");
+
+ b.ToTable("TextManager_Chapter", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.CheckoutAgg.Checkout", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("AbsenceDeduction")
+ .HasColumnType("float");
+
+ b.Property("AbsencePeriod")
+ .HasColumnType("float");
+
+ b.Property("AbsenceValue")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("ArchiveCode")
+ .HasMaxLength(15)
+ .HasColumnType("nvarchar(15)");
+
+ b.Property("AverageHoursPerDay")
+ .HasColumnType("float");
+
+ b.Property("BaseYearsPay")
+ .HasColumnType("float");
+
+ b.Property("BonusesPay")
+ .HasColumnType("float");
+
+ b.Property("ConsumableItems")
+ .HasColumnType("float");
+
+ b.Property("ContractEnd")
+ .HasColumnType("datetime2");
+
+ b.Property("ContractId")
+ .HasColumnType("bigint");
+
+ b.Property("ContractNo")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("ContractStart")
+ .HasColumnType("datetime2");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("CreditLeaves")
+ .HasColumnType("float");
+
+ b.Property("DateOfBirth")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("EmployeeFullName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("EmployeeId")
+ .HasColumnType("bigint");
+
+ b.Property("EmployeeMandatoryHours")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("nvarchar(30)");
+
+ b.Property("FamilyAllowance")
+ .HasColumnType("float");
+
+ b.Property("FathersName")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("FridayPay")
+ .HasColumnType("float");
+
+ b.Property("FridayWorkValue")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("HasAmountConflict")
+ .HasColumnType("bit");
+
+ b.Property("HasRollCall")
+ .HasColumnType("bit");
+
+ b.Property("HousingAllowance")
+ .HasColumnType("float");
+
+ b.Property("InstallmentDeduction")
+ .HasColumnType("float");
+
+ b.Property("InsuranceDeduction")
+ .HasColumnType("float");
+
+ b.Property("IsActiveString")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("LeaveCheckout")
+ .HasColumnType("bit");
+
+ b.Property("LeavePay")
+ .HasColumnType("float");
+
+ b.Property("MarriedAllowance")
+ .HasColumnType("float");
+
+ b.Property("MissionPay")
+ .HasColumnType("float");
+
+ b.Property("Month")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("MonthlySalary")
+ .HasColumnType("float");
+
+ b.Property("NationalCode")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("NightworkPay")
+ .HasColumnType("float");
+
+ b.Property("OverNightWorkValue")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("OverTimeWorkValue")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("OvertimePay")
+ .HasColumnType("float");
+
+ b.Property("PersonnelCode")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("RewardPay")
+ .HasColumnType("float");
+
+ b.Property("RotatingShiftValue")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("SalaryAidDeduction")
+ .HasColumnType("float");
+
+ b.Property("ShiftPay")
+ .HasColumnType("float");
+
+ b.Property("Signature")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("SumOfWorkingDays")
+ .HasMaxLength(6)
+ .HasColumnType("nvarchar(6)");
+
+ b.Property("TaxDeducation")
+ .HasColumnType("float");
+
+ b.Property("TotalClaims")
+ .HasMaxLength(25)
+ .HasColumnType("nvarchar(25)");
+
+ b.Property("TotalDayOfBunosesCompute")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("TotalDayOfLeaveCompute")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("TotalDayOfYearsCompute")
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("TotalDeductions")
+ .HasMaxLength(25)
+ .HasColumnType("nvarchar(25)");
+
+ b.Property("TotalPayment")
+ .HasColumnType("float");
+
+ b.Property("WorkingHoursId")
+ .HasColumnType("bigint");
+
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.Property("WorkshopName")
+ .HasMaxLength(70)
+ .HasColumnType("nvarchar(70)");
+
+ b.Property("Year")
+ .HasMaxLength(4)
+ .HasColumnType("nvarchar(4)");
+
+ b.Property("YearsPay")
+ .HasColumnType("float");
+
+ b.HasKey("id");
+
+ b.HasIndex("WorkshopId");
+
+ b.ToTable("Checkouts", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationEmployee", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("ClassificationGroupId")
+ .HasColumnType("bigint");
+
+ b.Property("ClassificationGroupJobId")
+ .HasColumnType("bigint");
+
+ b.Property("ClassificationSchemeId")
+ .HasColumnType("bigint");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("EmployeeId")
+ .HasColumnType("bigint");
+
+ b.Property("EndGroupDate")
+ .HasColumnType("datetime2");
+
+ b.Property("StartGroupDate")
+ .HasColumnType("datetime2");
+
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.HasKey("id");
+
+ b.HasIndex("ClassificationGroupId");
+
+ b.ToTable("ClassificationEmployee", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationGroup", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("ClassificationSchemeId")
+ .HasColumnType("bigint");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("GroupNo")
+ .HasMaxLength(2)
+ .HasColumnType("nvarchar(2)");
+
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.HasKey("id");
+
+ b.HasIndex("ClassificationSchemeId");
+
+ b.ToTable("ClassificationGroups", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationGroupJob", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("ClassificationGroupId")
+ .HasColumnType("bigint");
+
+ b.Property("GroupNo")
+ .HasMaxLength(2)
+ .HasColumnType("nvarchar(2)");
+
+ b.Property("JobCode")
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("JobId")
+ .HasColumnType("bigint");
+
+ b.Property("JobName")
+ .HasMaxLength(255)
+ .HasColumnType("nvarchar(255)");
+
+ b.HasKey("id");
+
+ b.HasIndex("ClassificationGroupId");
+
+ b.ToTable("ClassificationGroupJobs", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationGroupSalary", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("ClassificationGroupId")
+ .HasColumnType("bigint");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("EndDate")
+ .HasColumnType("datetime2");
+
+ b.Property("GroupNo")
+ .HasMaxLength(2)
+ .HasColumnType("nvarchar(2)");
+
+ b.Property("GroupSalary")
+ .HasColumnType("float");
+
+ b.Property("SchemeId")
+ .HasColumnType("bigint");
+
+ b.Property("StartDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Year")
+ .HasColumnType("int");
+
+ b.HasKey("id");
+
+ b.HasIndex("ClassificationGroupId");
+
+ b.ToTable("ClassificationGroupSalaries", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationRialCoefficient", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("ClassificationSchemeId")
+ .HasColumnType("bigint");
+
+ b.Property("EndDate")
+ .HasColumnType("datetime2");
+
+ b.Property("RialCoefficient")
+ .HasColumnType("float");
+
+ b.Property("StartDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Year")
+ .HasColumnType("int");
+
+ b.HasKey("id");
+
+ b.HasIndex("ClassificationSchemeId");
+
+ b.ToTable("ClassificationRialCoefficients", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassificationSchemeAgg.ClassificationScheme", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("DesignerFullName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("DesignerPhone")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("EndSchemeDateGr")
+ .HasColumnType("datetime2");
+
+ b.Property("ExecutionDateGr")
+ .HasColumnType("datetime2");
+
+ b.Property("IncludingDateGr")
+ .HasColumnType("datetime2");
+
+ b.Property("TypeOfCoefficient")
+ .IsRequired()
+ .HasMaxLength(30)
+ .HasColumnType("nvarchar(30)");
+
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.HasKey("id");
+
+ b.ToTable("ClassificationSchemes", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClassifiedSalaryAgg.ClassifiedSalary", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("EndDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Group1")
+ .HasColumnType("float");
+
+ b.Property("Group10")
+ .HasColumnType("float");
+
+ b.Property("Group11")
+ .HasColumnType("float");
+
+ b.Property("Group12")
+ .HasColumnType("float");
+
+ b.Property("Group13")
+ .HasColumnType("float");
+
+ b.Property("Group14")
+ .HasColumnType("float");
+
+ b.Property("Group15")
+ .HasColumnType("float");
+
+ b.Property("Group16")
+ .HasColumnType("float");
+
+ b.Property("Group17")
+ .HasColumnType("float");
+
+ b.Property("Group18")
+ .HasColumnType("float");
+
+ b.Property("Group19")
+ .HasColumnType("float");
+
+ b.Property("Group2")
+ .HasColumnType("float");
+
+ b.Property("Group20")
+ .HasColumnType("float");
+
+ b.Property("Group3")
+ .HasColumnType("float");
+
+ b.Property("Group4")
+ .HasColumnType("float");
+
+ b.Property("Group5")
+ .HasColumnType("float");
+
+ b.Property("Group6")
+ .HasColumnType("float");
+
+ b.Property("Group7")
+ .HasColumnType("float");
+
+ b.Property("Group8")
+ .HasColumnType("float");
+
+ b.Property("Group9")
+ .HasColumnType("float");
+
+ b.Property("StartDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Year")
+ .HasColumnType("int");
+
+ b.HasKey("id");
+
+ b.ToTable("ClassifiedSalaries", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ClientEmployeeWorkshopAgg.ClientEmployeeWorkshop", b =>
+ {
+ b.Property("WorkshopId")
+ .HasColumnType("bigint");
+
+ b.Property("EmployeeId")
+ .HasColumnType("bigint");
+
+ b.HasKey("WorkshopId", "EmployeeId");
+
+ b.HasIndex("EmployeeId");
+
+ b.ToTable("ClientWorkshopEmployee", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.Contact2Agg.EntityContact", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("IsActiveString")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("NameContact")
+ .HasColumnType("nvarchar(max)");
+
+ b.Property("Signature")
+ .HasColumnType("nvarchar(max)");
+
+ b.HasKey("id");
+
+ b.ToTable("TextManager_Contact", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ContactUsAgg.ContactUs", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("Email")
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.Property("FirstName")
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("FullName")
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.Property("LastName")
+ .HasMaxLength(100)
+ .HasColumnType("nvarchar(100)");
+
+ b.Property("Message")
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.Property("PhoneNumber")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("Title")
+ .HasMaxLength(200)
+ .HasColumnType("nvarchar(200)");
+
+ b.HasKey("id");
+
+ b.ToTable("ContactUs");
+ });
+
+ modelBuilder.Entity("Company.Domain.ContarctingPartyAgg.PersonalContractingParty", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("Address")
+ .HasMaxLength(500)
+ .HasColumnType("nvarchar(500)");
+
+ b.Property("AgentPhone")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("ArchiveCode")
+ .HasColumnType("int");
+
+ b.Property("BlockTimes")
+ .HasColumnType("int");
+
+ b.Property("City")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("DateOfBirth")
+ .HasColumnType("datetime2");
+
+ b.Property("FName")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("FatherName")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("Gender")
+ .IsRequired()
+ .HasMaxLength(6)
+ .HasColumnType("nvarchar(6)");
+
+ b.Property("IdNumber")
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("IdNumberSeri")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("IdNumberSerial")
+ .HasMaxLength(15)
+ .HasColumnType("nvarchar(15)");
+
+ b.Property("IsActiveString")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("IsAuthenticated")
+ .HasColumnType("bit");
+
+ b.Property("IsBlock")
+ .HasMaxLength(5)
+ .HasColumnType("nvarchar(5)");
+
+ b.Property("IsLegal")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("LName")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("NationalId")
+ .IsRequired()
+ .HasMaxLength(15)
+ .HasColumnType("nvarchar(15)");
+
+ b.Property("Nationalcode")
+ .IsRequired()
+ .HasMaxLength(10)
+ .HasColumnType("nvarchar(10)");
+
+ b.Property("Phone")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("RegisterId")
+ .IsRequired()
+ .HasMaxLength(15)
+ .HasColumnType("nvarchar(15)");
+
+ b.Property("RepresentativeFullName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("RepresentativeId")
+ .HasColumnType("bigint");
+
+ b.Property("State")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("SureName")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("Zone")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.HasKey("id");
+
+ b.HasIndex("RepresentativeId");
+
+ b.ToTable("PersonalContractingParties", (string)null);
+ });
+
+ modelBuilder.Entity("Company.Domain.ContractAgg.Contract", b =>
+ {
+ b.Property("id")
+ .ValueGeneratedOnAdd()
+ .HasColumnType("bigint");
+
+ SqlServerPropertyBuilderExtensions.UseIdentityColumn(b.Property("id"));
+
+ b.Property("AgreementSalary")
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("ArchiveCode")
+ .IsRequired()
+ .HasMaxLength(255)
+ .HasColumnType("nvarchar(255)");
+
+ b.Property("BaseYearAffected")
+ .HasColumnType("float");
+
+ b.Property("BaseYearUnAffected")
+ .HasColumnType("float");
+
+ b.Property("ConsumableItems")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property("ContarctStart")
+ .HasColumnType("datetime2");
+
+ b.Property("ContractEnd")
+ .HasColumnType("datetime2");
+
+ b.Property("ContractNo")
+ .IsRequired()
+ .HasMaxLength(255)
+ .HasColumnType("nvarchar(255)");
+
+ b.Property("ContractPeriod")
+ .HasMaxLength(2)
+ .HasColumnType("nvarchar(2)");
+
+ b.Property("ContractType")
+ .IsRequired()
+ .HasMaxLength(20)
+ .HasColumnType("nvarchar(20)");
+
+ b.Property("CreationDate")
+ .HasColumnType("datetime2");
+
+ b.Property("DailySalaryAffected")
+ .HasColumnType("float");
+
+ b.Property("DailySalaryUnAffected")
+ .HasColumnType("float");
+
+ b.Property("DailyWageType")
+ .HasMaxLength(30)
+ .HasColumnType("nvarchar(30)");
+
+ b.Property("DayliWage")
+ .IsRequired()
+ .HasMaxLength(50)
+ .HasColumnType("nvarchar(50)");
+
+ b.Property