From 49b84b50a50c42fe84af7bbf9c752843fb3a7f8d Mon Sep 17 00:00:00 2001 From: SamSys Date: Mon, 18 Aug 2025 05:33:31 +0330 Subject: [PATCH] add dailywage select on create contract front --- Company.Domain/ContractAgg/Contract.cs | 31 + .../Company/Workshops/AutoExtension.cshtml | 935 ++++++++++-------- .../Company/Workshops/AutoExtension.cshtml.cs | 27 + ServiceHost/Properties/launchSettings.json | 2 +- .../page/Workshop/js/AutoExtension.js | 13 + 5 files changed, 581 insertions(+), 427 deletions(-) diff --git a/Company.Domain/ContractAgg/Contract.cs b/Company.Domain/ContractAgg/Contract.cs index 24e2e371..bf73b11d 100644 --- a/Company.Domain/ContractAgg/Contract.cs +++ b/Company.Domain/ContractAgg/Contract.cs @@ -65,7 +65,38 @@ public class Contract : EntityBase public DateTime SetContractDate { get; private set; } public string JobType { get; private set; } public string ContractType { get; private set; } + /// + /// مزد تجمیعی یعد از تاثیر ساعت کار + /// public string DayliWage { get; private set; } + + ///// + ///// دستمزد روزانه خام بعد از تاثیر ساعت کار + ///// + //public double DailySalaryAffected { get; set; } + + ///// + ///// پایه سنوات بعد از تاثیر ساعت کار + ///// + //public double BaseYearAffected { get; set; } + + + ///// + ///// دستمزد روزانه قبل از تاثیر ساعت کار + ///// + //public double DailySalaryUnAffected { get; set; } + + ///// + ///// پایه سنوات قبل از تاثیر ساعت کار + ///// + //public double BaseYearUnAffected { get; set; } + + ///// + ///// آیا دستمزد روزانه دستی وارد شده است؟ + ///// + //public bool HasManualDailyWage { get; set; } + + public string IsActiveString { get; private set; } public string ArchiveCode { get; private set; } public string WorkshopAddress1 { get; private set; } diff --git a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml index 31c60a1d..203c991a 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml +++ b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml @@ -4,447 +4,466 @@ @{ @section Styles{ + @*heder*@ + .top-Bar { + background-color: #c1dcd8; + height: 100px; + border-radius: 15px; + margin: 0px 2px 10px 2px; + box-shadow: 0px 1px 15px 0 #749883; + + } + .workshopName { + color: #fff; + background-color: #1b9998; + font-size: 15px; + border-radius: 15px; + height: 25px; + line-height: 1.8; + } + .manual { + background-color: #efefef; + min-height: 160px; + border-radius: 15px; + width: 49%; + box-shadow: 0px 1px 15px 0 #0f8181; + } + .automatic { + background-color: #efefef; + min-height: 160px; + border-radius: 15px; + width: 49%; + box-shadow: 0px 1px 15px 0 #0f8181 + } + .discManual { + border-radius: 20px 5px 0px 0px; + cursor: unset; + font-size: 12px; + padding: 3px 10px; + } + .inptAutomatic { + display: inline-block; + border-radius: 15px; + text-align: center; + } + .trueStatusHide { + display: none; + } + .falseStatusHide { + display: none; + } + .progBar { + display: none; + } + #createProcess { + background-color: #fdfdfd; + height: 100px; + border-radius: 15px; + margin: 0px 2px 10px 2px; + box-shadow: 0px 1px 15px 0 #1ebb5f; + } + .progress-bar { + color: #fff!important; + font-size: 17px !important; + line-height: 23px !important; + border-radius: 10px !important; + + } + + .dayliwage{ + width: 50% !important; + } + + .groupDailyWageDisable{ + background-color: #e1e1e1; + color: #bfbfbf; + pointer-events: none; + opacity: 0.5; + } + + .groupDailyWageEnable { + background-color: #d0d0d0; + color: #232323; + pointer-events:auto; + opacity: 1; + + } + } var i = 1; @@ -525,22 +544,30 @@
-

ایجاد قرارداد بصورت خودکار

+

انتخاب دستمزد بصورت گروهی


-
- تاریخ شروع - + -
- تاریخ پایان - -
+ +
@@ -653,7 +680,7 @@ پرسنل سمت - نوع قرارداد + دستمزد روزانه مدت قرارداد تاریخ شروع @@ -729,15 +756,16 @@ - - - - + + + + @@ -851,6 +879,61 @@ var EmployeesStartedWorkInSelectedPeriodAjaxUrl = '@Url.Page("./AutoExtension", "EmployeesStartedWorkInSelectedPeriod")'; + + diff --git a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs index 32439d90..d9b5c38c 100644 --- a/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs +++ b/ServiceHost/Areas/Admin/Pages/Company/Workshops/AutoExtension.cshtml.cs @@ -644,6 +644,33 @@ public class AutoExtensionModel : PageModel #endregion + + public IActionResult OnPostSelectDailyWage(string wageType) + { + var res = "0"; + switch (wageType) + { + case "0": + res = "0"; + break; + case "1": + res = "1000"; + break; + case "2": + res = "2000"; + break; + case "3": + res = "3000"; + break; + } + + return new JsonResult(new + { + isSuccess = true, + result = res + }); + + } #region CreateContract public IActionResult OnPostCreateContract(List createContarctList) diff --git a/ServiceHost/Properties/launchSettings.json b/ServiceHost/Properties/launchSettings.json index 69be5550..788962e4 100644 --- a/ServiceHost/Properties/launchSettings.json +++ b/ServiceHost/Properties/launchSettings.json @@ -11,7 +11,7 @@ }, "ServiceHost": { "commandName": "Project", - "launchBrowser": false, + "launchBrowser": true, "environmentVariables": { "ASPNETCORE_ENVIRONMENT": "Development", "ASPNETCORE_HOSTINGSTARTUPASSEMBLIES": "Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation" diff --git a/ServiceHost/wwwroot/AssetsAdmin/page/Workshop/js/AutoExtension.js b/ServiceHost/wwwroot/AssetsAdmin/page/Workshop/js/AutoExtension.js index d8eead67..419a123f 100644 --- a/ServiceHost/wwwroot/AssetsAdmin/page/Workshop/js/AutoExtension.js +++ b/ServiceHost/wwwroot/AssetsAdmin/page/Workshop/js/AutoExtension.js @@ -96,6 +96,8 @@ connection.on('showStatus', }); $('#firstCheckBtn').on('click', function () { + $("a.groupDailyWage") + .removeClass("groupDailyWageEnable"); $('#datatable tbody tr').each(function (i) { const tagTrue = $(this).find(".ion-checkmark-circled"); const tagFalse = $(this).find(".ion-close-circled"); @@ -177,8 +179,10 @@ $('#firstCheckBtn').on('click', if (continueCheck && dateInputPannel) { if (checkboxCount > 0) { + $('#datatable tbody tr').each(function (i) { let chekbox = $(this).find("input[name=selectItem]"); + $(this).find(".selectDailyWageModel").prop("disabled", true); if (chekbox.is(":checked") == true) { employeeId = $(this).attr("data-employeeId"); start = $(this).find("input[name=contarctStart]").val(); @@ -358,6 +362,7 @@ $('#firstCheckBtn').on('click', } else { $(this).removeClass("redColor"); $(this).addClass("greenColor"); + $(this).find(".selectDailyWageModel").prop("disabled", false); //$(this).find("input[type=checkbox]").removeAttr("disabled"); //$(this).find("input[type=checkbox]").prop("checked", true); var iTagTrue = $(this).find(".ion-checkmark-circled"); @@ -419,6 +424,14 @@ $('#firstCheckBtn').on('click', }); //end of each + + + var greenCount = $("table tr.greenColor").length; + + if (greenCount >= 1) { + $("a.groupDailyWage") + .addClass("groupDailyWageEnable"); + } } else { //checkboxCount If statment $.Notification.autoHideNotify('error', 'top center', 'پیام سیستم ', " هیچ موردی انتخاب نشده است - میتوانید بصورت گروهی یا تکی، پرسنل را تیک بزنید");