From d2a5d3cb4b243a867c0bbe4fab72f3c0cb498f89 Mon Sep 17 00:00:00 2001 From: samsys Date: Mon, 8 Jul 2024 22:03:37 +0330 Subject: [PATCH] start rollcall computing --- 0_Framework/0_Framework.csproj | 1 - 0_Framework/Application/Tools.cs | 12 + ...untManagement.Application.Contracts.csproj | 4 - .../IWorkingHoursItemsRepository.cs | 5 +- .../IWorkingHoursTempRepository.cs | 1 + .../CompanyManagment.App.Contracts.csproj | 1 - .../IWorkingHoursTempApplication.cs | 1 + .../WorkingHoursTempApplication.cs | 8 +- .../InstitutionContractRepository.cs | 1 - .../Repository/WorkingHoursItemsRepository.cs | 9 +- .../Pages/Accounts/Account/CreateRole.cshtml | 16 +- .../Pages/Accounts/Account/EditRole.cshtml | 16 +- .../Pages/Company/Checkouts/Index.cshtml.cs | 57 +- .../ConnectedPersonnels/TakePicture.cshtml | 5 +- .../Company/Workshops/AutoExtension.cshtml.cs | 467 +- .../Pages/Company/Workshops/clock.cshtml | 8408 +++++++++-------- .../Areas/Admin/Pages/Shared/_Menu.cshtml | 4 +- ServiceHost/ServiceHost.csproj | 1 - _0_Framework/_0_Framework_b.csproj | 1 - 19 files changed, 4706 insertions(+), 4312 deletions(-) diff --git a/0_Framework/0_Framework.csproj b/0_Framework/0_Framework.csproj index 8b987ffb..e8784139 100644 --- a/0_Framework/0_Framework.csproj +++ b/0_Framework/0_Framework.csproj @@ -8,7 +8,6 @@ - diff --git a/0_Framework/Application/Tools.cs b/0_Framework/Application/Tools.cs index 00599bfb..98905a4a 100644 --- a/0_Framework/Application/Tools.cs +++ b/0_Framework/Application/Tools.cs @@ -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) { diff --git a/AccountManagement.Application.Contracts/AccountManagement.Application.Contracts.csproj b/AccountManagement.Application.Contracts/AccountManagement.Application.Contracts.csproj index 2d4d893a..e03c4387 100644 --- a/AccountManagement.Application.Contracts/AccountManagement.Application.Contracts.csproj +++ b/AccountManagement.Application.Contracts/AccountManagement.Application.Contracts.csproj @@ -4,10 +4,6 @@ net8.0 - - - - diff --git a/Company.Domain/WorkingHoursItemsAgg/IWorkingHoursItemsRepository.cs b/Company.Domain/WorkingHoursItemsAgg/IWorkingHoursItemsRepository.cs index 34c28e0e..e0ab54a4 100644 --- a/Company.Domain/WorkingHoursItemsAgg/IWorkingHoursItemsRepository.cs +++ b/Company.Domain/WorkingHoursItemsAgg/IWorkingHoursItemsRepository.cs @@ -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 GetWorkingHoursItems(); List GetWorkingHoursItemListByHoursId(long id); WorkingHoursItemsViewModel GetByWorkingHoursId(long id); + ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end); } \ No newline at end of file diff --git a/Company.Domain/WorkingHoursTempAgg/IWorkingHoursTempRepository.cs b/Company.Domain/WorkingHoursTempAgg/IWorkingHoursTempRepository.cs index 2497f128..5f9c1ee9 100644 --- a/Company.Domain/WorkingHoursTempAgg/IWorkingHoursTempRepository.cs +++ b/Company.Domain/WorkingHoursTempAgg/IWorkingHoursTempRepository.cs @@ -20,4 +20,5 @@ public interface IWorkingHoursTempRepository : IRepository> Correct(); void RemoveWorkingHoursTempAndItems(long workshopId, long employeeId); + ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end); } \ No newline at end of file diff --git a/CompanyManagment.App.Contracts/CompanyManagment.App.Contracts.csproj b/CompanyManagment.App.Contracts/CompanyManagment.App.Contracts.csproj index 850d7bb8..2759a76d 100644 --- a/CompanyManagment.App.Contracts/CompanyManagment.App.Contracts.csproj +++ b/CompanyManagment.App.Contracts/CompanyManagment.App.Contracts.csproj @@ -5,7 +5,6 @@ - diff --git a/CompanyManagment.App.Contracts/WorkingHoursTemp/IWorkingHoursTempApplication.cs b/CompanyManagment.App.Contracts/WorkingHoursTemp/IWorkingHoursTempApplication.cs index c9d455c5..8abf3a26 100644 --- a/CompanyManagment.App.Contracts/WorkingHoursTemp/IWorkingHoursTempApplication.cs +++ b/CompanyManagment.App.Contracts/WorkingHoursTemp/IWorkingHoursTempApplication.cs @@ -21,4 +21,5 @@ public interface IWorkingHoursTempApplication Task > Correct(); Task GetByWorkshopIdAndEmployeeIdAsync(long workshopId, long employeeId); void RemoveWorkingHoursTempAndItems(long workshopId, long employeeId); + ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end); } \ No newline at end of file diff --git a/CompanyManagment.Application/WorkingHoursTempApplication.cs b/CompanyManagment.Application/WorkingHoursTempApplication.cs index be18676d..9a375645 100644 --- a/CompanyManagment.Application/WorkingHoursTempApplication.cs +++ b/CompanyManagment.Application/WorkingHoursTempApplication.cs @@ -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(); + } } \ No newline at end of file diff --git a/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs b/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs index cd307a54..c721f530 100644 --- a/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs +++ b/CompanyManagment.EFCore/Repository/InstitutionContractRepository.cs @@ -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; diff --git a/CompanyManagment.EFCore/Repository/WorkingHoursItemsRepository.cs b/CompanyManagment.EFCore/Repository/WorkingHoursItemsRepository.cs index 9a3111c5..740ac81f 100644 --- a/CompanyManagment.EFCore/Repository/WorkingHoursItemsRepository.cs +++ b/CompanyManagment.EFCore/Repository/WorkingHoursItemsRepository.cs @@ -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 x.WorkingHoursId == id); } + + public ComputingViewModel GetWorkingHourSByRollCall(long workshopId, long employeeId, DateTime start, DateTime end) + { + throw new NotImplementedException(); + } } \ No newline at end of file diff --git a/ServiceHost/Areas/Admin/Pages/Accounts/Account/CreateRole.cshtml b/ServiceHost/Areas/Admin/Pages/Accounts/Account/CreateRole.cshtml index 07805c6e..8f099116 100644 --- a/ServiceHost/Areas/Admin/Pages/Accounts/Account/CreateRole.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Accounts/Account/CreateRole.cshtml @@ -465,8 +465,20 @@ @*مقادیر سالانه*@
- - + + + +
+ @*مزد سنوات*@ +
+ + + +
+ @* مزد سنوات بیمه*@ +
+ +
@*لیست مشاغل*@ diff --git a/ServiceHost/Areas/Admin/Pages/Accounts/Account/EditRole.cshtml b/ServiceHost/Areas/Admin/Pages/Accounts/Account/EditRole.cshtml index c5e144ab..6dd6c0bc 100644 --- a/ServiceHost/Areas/Admin/Pages/Accounts/Account/EditRole.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Accounts/Account/EditRole.cshtml @@ -458,8 +458,20 @@ @*مقادیر سالانه*@
- - + + + +
+ @*مزد سنوات*@ +
+ + + +
+ @* مزد سنوات بیمه*@ +
+ +
@*لیست مشاغل*@ diff --git a/ServiceHost/Areas/Admin/Pages/Company/Checkouts/Index.cshtml.cs b/ServiceHost/Areas/Admin/Pages/Company/Checkouts/Index.cshtml.cs index 7e5e080f..19173c7c 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/Checkouts/Index.cshtml.cs +++ b/ServiceHost/Areas/Admin/Pages/Company/Checkouts/Index.cshtml.cs @@ -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); diff --git a/ServiceHost/Areas/Admin/Pages/Company/ConnectedPersonnels/TakePicture.cshtml b/ServiceHost/Areas/Admin/Pages/Company/ConnectedPersonnels/TakePicture.cshtml index 0c65d1c6..2f247952 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/ConnectedPersonnels/TakePicture.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Company/ConnectedPersonnels/TakePicture.cshtml @@ -37,7 +37,10 @@
-
+
+ + +
diff --git a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs index f9cb0985..54e75474 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs +++ b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs @@ -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 + }); + } } diff --git a/ServiceHost/Areas/Admin/Pages/Company/Workshops/clock.cshtml b/ServiceHost/Areas/Admin/Pages/Company/Workshops/clock.cshtml index ea90aee5..8638f556 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/Workshops/clock.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Company/Workshops/clock.cshtml @@ -3080,392 +3080,393 @@ -@**@ + + + diff --git a/ServiceHost/Areas/Admin/Pages/Shared/_Menu.cshtml b/ServiceHost/Areas/Admin/Pages/Shared/_Menu.cshtml index 8719440c..e6a90867 100644 --- a/ServiceHost/Areas/Admin/Pages/Shared/_Menu.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Shared/_Menu.cshtml @@ -104,8 +104,8 @@
  • گزارش پیامک خودکار
  • ایجاد عناوین مقادیر سالانه
  • مقادیر سالانه
  • -
  • مزد سنوات
  • -
  • مزد سنوات بیمه
  • +
  • مزد سنوات
  • +
  • مزد سنوات بیمه
  • لیست مشاغل
  • تعطیلات رسمی
  • ساعت موظفی
  • diff --git a/ServiceHost/ServiceHost.csproj b/ServiceHost/ServiceHost.csproj index db76e589..d4757403 100644 --- a/ServiceHost/ServiceHost.csproj +++ b/ServiceHost/ServiceHost.csproj @@ -69,7 +69,6 @@ all runtime; build; native; contentfiles; analyzers; buildtransitive - diff --git a/_0_Framework/_0_Framework_b.csproj b/_0_Framework/_0_Framework_b.csproj index ee447aba..ceb20d98 100644 --- a/_0_Framework/_0_Framework_b.csproj +++ b/_0_Framework/_0_Framework_b.csproj @@ -9,7 +9,6 @@ -