start rollcall computing
This commit is contained in:
@@ -8,7 +8,6 @@
|
||||
<ItemGroup>
|
||||
<PackageReference Include="IPE.SmsIR" Version="1.0.5" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="2.1.34" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Http.Features" Version="5.0.17" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
|
||||
<PackageReference Include="Newtonsoft.Json" Version="13.0.3" />
|
||||
<PackageReference Include="PersianTools.Core" Version="2.0.4" />
|
||||
|
||||
@@ -4,6 +4,7 @@ using System.Globalization;
|
||||
using System.Text.RegularExpressions;
|
||||
using _0_Framework.Infrastructure;
|
||||
using PersianTools.Core;
|
||||
using static Microsoft.EntityFrameworkCore.DbLoggerCategory.Database;
|
||||
|
||||
|
||||
namespace _0_Framework.Application;
|
||||
@@ -979,6 +980,17 @@ public static class Tools
|
||||
return result;
|
||||
}
|
||||
|
||||
public static bool CheckValidHm(string input)
|
||||
{
|
||||
if (string.IsNullOrWhiteSpace(input))
|
||||
return true;
|
||||
string pattern = @"^([2][0-3]|[1][0-9]|[0-9]|[0][0-9])([:][0-5][0-9])$";
|
||||
|
||||
var match = Regex.Match(input, pattern);
|
||||
if (!match.Success)
|
||||
return false;
|
||||
return true;
|
||||
}
|
||||
#region Mahan
|
||||
public static string ToFarsiDuration(this string date)
|
||||
{
|
||||
|
||||
@@ -4,10 +4,6 @@
|
||||
<TargetFramework>net8.0</TargetFramework>
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.Http.Features" Version="5.0.17" />
|
||||
</ItemGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\0_Framework\0_Framework.csproj" />
|
||||
</ItemGroup>
|
||||
|
||||
@@ -1,5 +1,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.Contract;
|
||||
using CompanyManagment.App.Contracts.WorkingHoursItems;
|
||||
|
||||
namespace Company.Domain.WorkingHoursItemsAgg;
|
||||
@@ -10,4 +12,5 @@ public interface IWorkingHoursItemsRepository : IRepository<long, WorkingHoursIt
|
||||
List<WorkingHoursItemsViewModel> GetWorkingHoursItems();
|
||||
List<WorkingHoursItemsViewModel> GetWorkingHoursItemListByHoursId(long id);
|
||||
WorkingHoursItemsViewModel GetByWorkingHoursId(long id);
|
||||
ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end);
|
||||
}
|
||||
@@ -20,4 +20,5 @@ public interface IWorkingHoursTempRepository : IRepository<long, WorkingHoursTem
|
||||
Task<List<EditContract>> Correct();
|
||||
void RemoveWorkingHoursTempAndItems(long workshopId, long employeeId);
|
||||
|
||||
ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end);
|
||||
}
|
||||
@@ -5,7 +5,6 @@
|
||||
</PropertyGroup>
|
||||
|
||||
<ItemGroup>
|
||||
<PackageReference Include="Microsoft.AspNetCore.Mvc.Razor" Version="2.2.0" />
|
||||
<PackageReference Include="PersianTools.Core" Version="2.0.4" />
|
||||
</ItemGroup>
|
||||
|
||||
|
||||
@@ -21,4 +21,5 @@ public interface IWorkingHoursTempApplication
|
||||
Task <List<EditContract>> Correct();
|
||||
Task<CreateWorkingHoursTemp> GetByWorkshopIdAndEmployeeIdAsync(long workshopId, long employeeId);
|
||||
void RemoveWorkingHoursTempAndItems(long workshopId, long employeeId);
|
||||
ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end);
|
||||
}
|
||||
@@ -1,4 +1,5 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using Company.Domain.WorkingHoursTempAgg;
|
||||
@@ -868,4 +869,9 @@ public class WorkingHoursTempApplication : IWorkingHoursTempApplication
|
||||
{
|
||||
_workingHoursTempRepository.RemoveWorkingHoursTempAndItems(workshopId, employeeId);
|
||||
}
|
||||
|
||||
public ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -17,7 +17,6 @@ using CompanyManagment.App.Contracts.InstitutionContract;
|
||||
using CompanyManagment.App.Contracts.LeftWork;
|
||||
using CompanyManagment.App.Contracts.LeftWorkInsurance;
|
||||
using CompanyManagment.App.Contracts.Workshop;
|
||||
using Microsoft.CodeAnalysis.CSharp.Syntax;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using PersianTools.Core;
|
||||
|
||||
|
||||
@@ -1,7 +1,9 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using _0_Framework.InfraStructure;
|
||||
using Company.Domain.WorkingHoursItemsAgg;
|
||||
using CompanyManagment.App.Contracts.Contract;
|
||||
using CompanyManagment.App.Contracts.WorkingHoursItems;
|
||||
|
||||
namespace CompanyManagment.EFCore.Repository;
|
||||
@@ -109,4 +111,9 @@ public class WorkingHoursItemsRepository : RepositoryBase<long, WorkingHoursItem
|
||||
})
|
||||
.SingleOrDefault(x => x.WorkingHoursId == id);
|
||||
}
|
||||
|
||||
public ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end)
|
||||
{
|
||||
throw new NotImplementedException();
|
||||
}
|
||||
}
|
||||
@@ -465,8 +465,20 @@
|
||||
</div>
|
||||
@*مقادیر سالانه*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="302" class="check-btn"> <span style="bottom: 2px;position: relative"> مقادیر سالانه </span> </label>
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="302" class="check-btn"> <span style="bottom: 2px;position: relative"> مزد سنوات </span> </label>
|
||||
|
||||
</div>
|
||||
@*مزد سنوات*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="309" class="check-btn"> <span style="bottom: 2px;position: relative"> مزد سنوات بیمه </span> </label>
|
||||
|
||||
</div>
|
||||
@* مزد سنوات بیمه*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="310" class="check-btn"> <span style="bottom: 2px;position: relative"> مقادیر سالانه </span> </label>
|
||||
|
||||
</div>
|
||||
@*لیست مشاغل*@
|
||||
|
||||
@@ -458,8 +458,20 @@
|
||||
</div>
|
||||
@*مقادیر سالانه*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="302" class="check-btn"> <span style="bottom: 2px;position: relative"> مقادیر سالانه </span> </label>
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="302" class="check-btn"> <span style="bottom: 2px;position: relative"> مقادیر سالانه </span> </label>
|
||||
|
||||
</div>
|
||||
@*مزد سنوات*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="309" class="check-btn"> <span style="bottom: 2px;position: relative"> مزد سنوات </span> </label>
|
||||
|
||||
</div>
|
||||
@* مزد سنوات بیمه*@
|
||||
<div class="child-check level2">
|
||||
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close"><i class="ion-plus"></i> <i class="ion-minus" style="display: none;"></i><input type="checkbox" style="display: none" class="open-btn" /></label>
|
||||
<label class="btn btn-inverse waves-effect waves-light m-b-5 parentLevel2"> <input type="checkbox" disabled="disabled" value="310" class="check-btn"> <span style="bottom: 2px;position: relative"> مزد سنوات بیمه </span> </label>
|
||||
|
||||
</div>
|
||||
@*لیست مشاغل*@
|
||||
|
||||
@@ -462,64 +462,8 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Checkouts
|
||||
var separation = _contractApplication.contractSeparation(ConvertYear, ConvertMonth,
|
||||
contract.ContractStartGr, contract.ContractEndGr, contract.EmployeeId, contract.WorkshopIds);
|
||||
|
||||
|
||||
//if (contract.EmployeeId == 41256)// نوشین عینی فرد
|
||||
//{
|
||||
// separation.checker = false;
|
||||
// var left = _leftWorkApplication.CheckoutleftWorkCheck(contract.ContractStartGr,
|
||||
// contract.WorkshopIds, contract.EmployeeId);
|
||||
// if (left.LeftWorkDate != "1500/01/01" && left.LeftWorkDateGr < contract.ContractEndGr &&
|
||||
// left.LeftWorkDateGr >= contract.ContractStartGr)
|
||||
// {
|
||||
// separation.ContractEndGr = left.LeftWorkDateGr.AddDays(-1);
|
||||
// separation.ContractEnd = separation.ContractEndGr.ToFarsi();
|
||||
// separation.checker = true;
|
||||
// }
|
||||
|
||||
// if (left.LeftWorkDate != "1500/01/01" && left.LeftWorkDateGr >= contract.ContractEndGr &&
|
||||
// left.LeftWorkDateGr > contract.ContractStartGr)
|
||||
// {
|
||||
// if (left.LeftWorkDateGr == contract.ContractEndGr)
|
||||
// {
|
||||
// separation.ContractEndGr = left.LeftWorkDateGr.AddDays(-1);
|
||||
// separation.ContractEnd = separation.ContractEndGr.ToFarsi();
|
||||
// separation.checker = true;
|
||||
// }
|
||||
// else
|
||||
// {
|
||||
// separation.ContractEndGr = contract.ContractEndGr;
|
||||
// separation.ContractEnd = contract.ContractEnd;
|
||||
// separation.checker = true;
|
||||
// }
|
||||
// }else if (left.LeftWorkDate != "1500/01/01" && contract.ContractStartGr > left.LeftWorkDateGr)
|
||||
// {
|
||||
// separation.checker = false;
|
||||
// }else if (left.LeftWorkDate == "1500/01/01")
|
||||
// {
|
||||
// separation.ContractEndGr = contract.ContractEndGr;
|
||||
// separation.ContractEnd = contract.ContractEnd;
|
||||
// separation.checker = true;
|
||||
// }
|
||||
// separation.ContarctStart = contract.ContarctStart;
|
||||
|
||||
// separation.ContractStartGr = contract.ContractStartGr;
|
||||
|
||||
|
||||
|
||||
//}
|
||||
if (separation.checker)
|
||||
{
|
||||
//var computeItems = new CreateContract()
|
||||
//{
|
||||
// ContractStartGr = separation.ContractStartGr,
|
||||
// ContractEndGr = separation.ContractEndGr,
|
||||
// ContarctStart = separation.ContarctStart,
|
||||
// ContractEnd = separation.ContractEnd,
|
||||
// GetWorkDateHide = contract.GetWorkDate,
|
||||
// WorkshopIds = contract.WorkshopIds,
|
||||
// EmployeeId = contract.EmployeeId,
|
||||
// ShiftWork = workingHours.ShiftWork,
|
||||
//};
|
||||
|
||||
workingHours.ContractStartGr = separation.ContractStartGr;
|
||||
workingHours.ContractEndGr = separation.ContractEndGr;
|
||||
@@ -3402,6 +3346,7 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Checkouts
|
||||
//if (string.IsNullOrWhiteSpace(command.TowShifts1DoShanbe1))
|
||||
if ((endTimeSingel2 - starTimeSingel1) >= rest2w1)
|
||||
endTimeSingel2 = endTimeSingel2.Subtract(rest2w1);
|
||||
|
||||
sumRest = sumRest.Add(rest2w1);
|
||||
|
||||
var rotatingCheck = RotatingShiftCheck(starTimeSingel1, endTimeSingel2, startTimeTowSh1, endTimeTowSh2);
|
||||
|
||||
@@ -37,7 +37,10 @@
|
||||
</div>
|
||||
<div class="panel-body">
|
||||
<div id="my_camera" style="margin: auto; display: none"></div>
|
||||
<div id="video" style="margin: auto;"></div>
|
||||
<div id="video" style="margin: auto;">
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
<div style="margin: 10px 0 0 0;text-align: center;">
|
||||
<input type="button" class="btn btn-success" value="گرفتن عکس اول" onclick="take_snapshot1()"/>
|
||||
|
||||
@@ -1,9 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
using System.Diagnostics.CodeAnalysis;
|
||||
using System.Globalization;
|
||||
using System.Linq;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
using _0_Framework.Application;
|
||||
using Company.Domain.ContractAgg;
|
||||
using Company.Domain.HolidayItemAgg;
|
||||
@@ -21,9 +18,6 @@ using CompanyManagment.App.Contracts.YearlySalary;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using Microsoft.AspNetCore.Mvc.RazorPages;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
using Microsoft.CodeAnalysis.CSharp.Syntax;
|
||||
using Microsoft.Extensions.Logging;
|
||||
using Microsoft.VisualBasic;
|
||||
using PersianTools.Core;
|
||||
using ServiceHost.Hubs;
|
||||
|
||||
@@ -782,19 +776,36 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
{
|
||||
var part1 = true;
|
||||
var part2 = true;
|
||||
if (string.IsNullOrWhiteSpace(command.SingleShift1Shanbe1) ||
|
||||
string.IsNullOrWhiteSpace(command.SingleShift2Shanbe1))
|
||||
if (string.IsNullOrWhiteSpace(command.SingleShift1Shanbe1) || string.IsNullOrWhiteSpace(command.SingleShift2Shanbe1))
|
||||
{
|
||||
part1 = false;
|
||||
}
|
||||
|
||||
if(string.IsNullOrWhiteSpace(command.TowShifts1Shanbe1) ||
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe1))
|
||||
|
||||
{
|
||||
part2 =false;
|
||||
}
|
||||
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.TowShifts1Shanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Shanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Shanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Shanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.YekShanbe1)
|
||||
{
|
||||
@@ -810,13 +821,29 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
{
|
||||
part2 = false;
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1YekShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2YekShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1YekShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2YekShanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.DoShanbe1)
|
||||
{
|
||||
|
||||
var part1 = true;
|
||||
var part2 = true;
|
||||
if (string.IsNullOrWhiteSpace(command.SingleShift1DoShanbe1) ||
|
||||
@@ -832,7 +859,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1DoShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift1DoShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1DoShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2DoShanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.SeShanbe1)
|
||||
{
|
||||
@@ -851,8 +892,22 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1SeShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2SeShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1SeShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2SeShanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.CheharShanbe1)
|
||||
{
|
||||
@@ -871,7 +926,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1CheharShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2CheharShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1CheharShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2CheharShanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.PanjShanbe1)
|
||||
{
|
||||
@@ -890,7 +959,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1PanjShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2PanjShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1PanjShanbe1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2PanjShanbe1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.Jome1)
|
||||
{
|
||||
@@ -909,7 +992,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week1Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Jome1)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Jome1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Jome1)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Jome1)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = false,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -928,13 +1025,28 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
part1 = false;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(command.TowShifts1Shanbe2) ||
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe2))
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe2))
|
||||
{
|
||||
part2 = false;
|
||||
}
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Shanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Shanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Shanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Shanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.YekShanbe2)
|
||||
{
|
||||
@@ -953,6 +1065,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1YekShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2YekShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1YekShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2YekShanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.DoShanbe2)
|
||||
@@ -972,6 +1099,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1DoShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2DoShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1DoShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2DoShanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.SeShanbe2)
|
||||
@@ -991,7 +1133,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1SeShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2SeShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1SeShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2SeShanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.CheharShanbe2)
|
||||
@@ -1011,6 +1167,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1CheharShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2CheharShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1CheharShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2CheharShanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.PanjShanbe2)
|
||||
@@ -1030,6 +1201,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1PanjShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2PanjShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1PanjShanbe2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2PanjShanbe2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.Jome2)
|
||||
@@ -1049,7 +1235,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week2Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Jome2)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Jome2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Jome2)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Jome2)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = false,
|
||||
week3Valid = true,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
@@ -1068,13 +1268,28 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
part1 = false;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(command.TowShifts1Shanbe3) ||
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe3))
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe3))
|
||||
{
|
||||
part2 = false;
|
||||
}
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Shanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Shanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Shanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Shanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.YekShanbe3)
|
||||
{
|
||||
@@ -1093,7 +1308,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1YekShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2YekShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1YekShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2YekShanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.DoShanbe3)
|
||||
{
|
||||
@@ -1112,7 +1341,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1DoShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2DoShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1DoShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2DoShanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.SeShanbe3)
|
||||
{
|
||||
@@ -1131,7 +1374,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1SeShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2SeShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1SeShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2SeShanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.CheharShanbe3)
|
||||
@@ -1151,7 +1408,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1CheharShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2CheharShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1CheharShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2CheharShanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.PanjShanbe3)
|
||||
{
|
||||
@@ -1170,7 +1441,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1PanjShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2PanjShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1PanjShanbe3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2PanjShanbe3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.Jome3)
|
||||
{
|
||||
@@ -1189,7 +1474,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week3Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Jome3)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Jome3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Jome3)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Jome3)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = false,
|
||||
week4Valid = true
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -1209,13 +1508,28 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
part1 = false;
|
||||
}
|
||||
if (string.IsNullOrWhiteSpace(command.TowShifts1Shanbe4) ||
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe4))
|
||||
string.IsNullOrWhiteSpace(command.TowShifts2Shanbe4))
|
||||
{
|
||||
part2 = false;
|
||||
}
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Shanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Shanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Shanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Shanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.YekShanbe4)
|
||||
{
|
||||
@@ -1234,6 +1548,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1YekShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2YekShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1YekShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2YekShanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.DoShanbe4)
|
||||
@@ -1253,7 +1582,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1DoShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2DoShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1DoShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2DoShanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.SeShanbe4)
|
||||
{
|
||||
@@ -1272,7 +1615,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1SeShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2SeShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1SeShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2SeShanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
|
||||
}
|
||||
if (command.CheharShanbe4)
|
||||
@@ -1292,7 +1649,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1CheharShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2CheharShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1CheharShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2CheharShanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.PanjShanbe4)
|
||||
{
|
||||
@@ -1311,7 +1682,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1PanjShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2PanjShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1PanjShanbe4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2PanjShanbe4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
}
|
||||
if (command.Jome4)
|
||||
{
|
||||
@@ -1330,7 +1715,21 @@ namespace ServiceHost.Areas.Admin.Pages.Company.Workshops
|
||||
|
||||
if (!part1 && !part2)
|
||||
week4Valid = false;
|
||||
|
||||
if ((!Tools.CheckValidHm(command.SingleShift1Jome4)) ||
|
||||
(!Tools.CheckValidHm(command.SingleShift2Jome4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts1Jome4)) ||
|
||||
(!Tools.CheckValidHm(command.TowShifts2Jome4)))
|
||||
{
|
||||
return new JsonResult(new
|
||||
{
|
||||
isSuccess = false,
|
||||
shiftErr = "4",
|
||||
week1Valid = true,
|
||||
week2Valid = true,
|
||||
week3Valid = true,
|
||||
week4Valid = false
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -104,8 +104,8 @@
|
||||
<li permission="306"><a class="clik3" asp-page="/Company/SmsResult/Index"> گزارش پیامک خودکار</a></li>
|
||||
<li permission="301"><a class="clik3" asp-page="/Company/YearlySalaryTitles/Index"> ایجاد عناوین مقادیر سالانه </a></li>
|
||||
<li permission="302"><a class="clik3" asp-page="/Company/YearlySalaries/Index"> مقادیر سالانه </a></li>
|
||||
<li permission="302"><a class="clik3" asp-page="/Company/ClassifiedSalary/Index"> مزد سنوات</a></li>
|
||||
<li permission="302"><a class="clik3" asp-page="/Company/InsuranceYearlySalary/Index"> مزد سنوات بیمه</a></li>
|
||||
<li permission="309"><a class="clik3" asp-page="/Company/ClassifiedSalary/Index"> مزد سنوات</a></li>
|
||||
<li permission="310"><a class="clik3" asp-page="/Company/InsuranceYearlySalary/Index"> مزد سنوات بیمه</a></li>
|
||||
<li permission="303"><a class="clik3" asp-page="/Company/Jobs/Index"> لیست مشاغل </a></li>
|
||||
<li permission="304"><a class="clik3" asp-page="/Company/Holidays/Index"> تعطیلات رسمی </a></li>
|
||||
<li permission="305"><a class="clik3" asp-page="/Company/MandatoryHours/Index"> ساعت موظفی </a></li>
|
||||
|
||||
@@ -69,7 +69,6 @@
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
<PackageReference Include="Microsoft.VisualStudio.Web.BrowserLink" Version="2.2.0" />
|
||||
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.2" />
|
||||
<PackageReference Include="SocialExplorer.FastDBF" Version="1.0.0" />
|
||||
<PackageReference Include="System.Data.OleDb" Version="8.0.0" />
|
||||
|
||||
@@ -9,7 +9,6 @@
|
||||
<PackageReference Include="Hangfire.Core" Version="1.8.6" />
|
||||
<PackageReference Include="Hangfire.SqlServer" Version="1.8.6" />
|
||||
<PackageReference Include="MD.PersianDateTime.Standard" Version="2.5.0" />
|
||||
<PackageReference Include="Microsoft.AspNetCore.Http.Abstractions" Version="2.2.0" />
|
||||
<PackageReference Include="Microsoft.EntityFrameworkCore" Version="8.0.4" />
|
||||
<PackageReference Include="PersianTools.Core" Version="2.0.4" />
|
||||
</ItemGroup>
|
||||
|
||||
Reference in New Issue
Block a user