Rgister Merge

This commit is contained in:
SamSys
2025-05-19 21:30:36 +03:30
12 changed files with 289 additions and 126 deletions

View File

@@ -1434,6 +1434,8 @@ public static class Tools
if (@char == char.Parse("ي"))
res += "ی";
else if (@char == char.Parse("ك"))
res += "ک";
else
res += @char;
}

View File

@@ -419,7 +419,7 @@ public class InsuranceListApplication: IInsuranceListApplication
{
var dateOfBirth = employee.DateOfBirthGr.ToFarsi();
var dateOfIssue = employee.DateOfIssueGr.ToFarsi();
var leftDate = employee.LeftWorkDateGr != null ? employee.LeftWorkDateGr.Value.AddDays(-1) : new DateTime();
var leftDate = employee.LeftWorkDateGr?.AddDays(-1) ?? new DateTime();
bool isManager = employee.JobId is 10 or 16 or 17 or 18 or 3498;
@@ -456,9 +456,22 @@ public class InsuranceListApplication: IInsuranceListApplication
var leftWorkFa = workingDays.hasLeftWorkInMonth ? employee.LeftWorkDateGr.ToFarsi(): "";
var startWorkFa = employee.StartWorkDateGr.ToFarsi();
//به دست آوردن دستمزد روزانه با توجه به اینکه کارگاه مشاغل مقطوع است یا خیر
var dailyWage = searchModel.FixedSalary ?
Convert.ToDouble(GetDailyWageFixedSalary(searchModel.Year, workshopId, employee.EmployeeId, startDateGr, endDateGr, employee.JobId, searchModel.Population, searchModel.InsuranceJobId))
: ComputeDailyWage(yearlysaleries.DayliWage, employee.EmployeeId, workshopId, searchModel.Year);
double dailyWage = 0;
if (searchModel.FixedSalary)
{
var res = GetDailyWageFixedSalary(searchModel.Year, workshopId, employee.EmployeeId, startDateGr,
endDateGr, employee.JobId, searchModel.Population, searchModel.InsuranceJobId);
dailyWage = res ?? 0;
}
else
{
var res = ComputeDailyWage(yearlysaleries.DayliWage, employee.EmployeeId, workshopId, searchModel.Year);
dailyWage = res;
}
//بدست آوردن پایه سنوات
var baseYears = _insuranceListRepositpry.GetEmployeeInsuranceBaseYear(employee.EmployeeId, workshopId,
workingDays.countWorkingDays, startDateGr, endDateGr,workingDays.startWork, workingDays.endWork, workingDays.hasLeftWorkInMonth);
@@ -488,6 +501,12 @@ public class InsuranceListApplication: IInsuranceListApplication
monthlyBenefits = GetRoundValue(monthlyBenefits += overTimePay);
}
//سرای ملک
// نوشین خالی
// 39692467
//if (employee.EmployeeId == 45280)
// monthlyBenefits += 39692467;
var marriedAllowanceCompute = MarriedAllowance(employee.MaritalStatus, employee.JobId, employee.IncludeStatus,
workingDays.countWorkingDays, yearlysaleries.MarriedAllowance, endOfMonth);
@@ -509,7 +528,7 @@ public class InsuranceListApplication: IInsuranceListApplication
.FirstOrDefault(e => e.EmployeeId == employee.EmployeeId);
//مزیای عیر مشمول لیست قبل
var benefitsIncludedNonContinuous =
employeeListData != null ? employeeListData.BenefitsIncludedNonContinuous : 0;
employeeListData?.BenefitsIncludedNonContinuous ?? 0;
if (workshop.InsuranceCheckoutFamilyAllowance && employeeHasCheckout && !isManager)
{
@@ -617,7 +636,7 @@ public class InsuranceListApplication: IInsuranceListApplication
};
});
}).ToList();
Console.WriteLine("New Compute : " + watch.Elapsed);
watch.Stop();
@@ -1659,93 +1678,138 @@ public class InsuranceListApplication: IInsuranceListApplication
private double? GetDailyWageFixedSalary(string year, long workshopId,long employeeId,DateTime? startDateGr, DateTime? endDateGr, long jobId, string population, long? insuranceJobId)
{
double? result = 0;
//اگر مشاغل مقطوع بود و شغلش کارفرما بود
// در جدول لیست بیمه قبلی چک شود
if (jobId == 10) //کارفرما
try
{
InsuranceListSearchModel searchModel = new InsuranceListSearchModel();
var workshop = _workShopRepository.GetDetails(workshopId);
if (workshop.FixedSalary)
if (workshopId == 318 && year == "1403")
{
double percent = 0;
switch (jobId)
{
case 39:
percent = 1.75;
return 4180000;
break;
case 466:
percent = 1.6;
return 3822000;
break;
case 1192 or 398 or 8:
percent = 1.5;
return 3583000;
break;
}
//var dateSaleryviewModel = new DateSalarySearchModel();
//dateSaleryviewModel.StartDateGr = startDateGr;
//dateSaleryviewModel.EndDateGr = endDateGr;
//var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
//// && _dateSalary.Id >0
//if (_dateSalary != null)
//{
// var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
// dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
// dateSaleryItemviewModel.Percent = percent;
// var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
// if (dateSalaryItem != null)
// result = dateSalaryItem[0].Salary;
//}
}
if (jobId == 10) //کارفرما
{
InsuranceListSearchModel searchModel = new InsuranceListSearchModel();
var workshop = _workShopRepository.GetDetails(workshopId);
if (workshop.FixedSalary)
{
var inJob = _insuranceJobItemRepository
.GetInsuranceJobItemByInsuranceJobId((long)workshop.InsuranceJobId);
if (workshop.Population == "MoreThan500")
{
var max = inJob.MaxBy(x => x.PercentageMoreThan);
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = max.PercentageMoreThan;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = max.PercentageMoreThan;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
}
else
{
var max = inJob.MaxBy(x => x.PercentageLessThan);
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = max.PercentageLessThan;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
var max = inJob.MaxBy(x => x.PercentageLessThan);
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = max.PercentageLessThan;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
}
}
//var insuransList = _insuranceListRepositpry.GetInsuranceListByWorkshopIdAndYear(workshopId, year);
//var employeeInsurancListData = _employeeInsurancListDataRepository.GetEmployeeInsurancListDataByEmployeeIdAndInsuranceListId(employeeId, insuransList.Id);
//if (employeeInsurancListData != null )
//{
// result = employeeInsurancListData.DailyWage;
//}
}
else
{
var searchModel = new InsuranceJobItemSearchModel();
searchModel.InsuranceJobId = (long)insuranceJobId;
var JobItem = _insuranceJobItemRepository.GetInsuranceJobItemByInsuranceJobIdForFixedSalary((long)insuranceJobId, jobId);
if (JobItem != null && JobItem.Id != 0)
{
double percent = 0;
if (population == "MoreThan500")
percent = JobItem.PercentageMoreThan;
else if (population == "LessThan500")
percent = JobItem.PercentageLessThan;
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
// && _dateSalary.Id >0
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = percent;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
}
}
//var insuransList = _insuranceListRepositpry.GetInsuranceListByWorkshopIdAndYear(workshopId, year);
//var employeeInsurancListData = _employeeInsurancListDataRepository.GetEmployeeInsurancListDataByEmployeeIdAndInsuranceListId(employeeId, insuransList.Id);
//if (employeeInsurancListData != null )
//{
// result = employeeInsurancListData.DailyWage;
//}
}
else
catch (Exception)
{
var searchModel = new InsuranceJobItemSearchModel();
searchModel.InsuranceJobId = (long)insuranceJobId;
var JobItem = _insuranceJobItemRepository.GetInsuranceJobItemByInsuranceJobIdForFixedSalary((long)insuranceJobId, jobId);
if (JobItem != null && JobItem.Id != 0)
{
double percent = 0;
if (population == "MoreThan500")
percent = JobItem.PercentageMoreThan;
else if (population == "LessThan500")
percent = JobItem.PercentageLessThan;
var dateSaleryviewModel = new DateSalarySearchModel();
dateSaleryviewModel.StartDateGr = startDateGr;
dateSaleryviewModel.EndDateGr = endDateGr;
var _dateSalary = _dateSalaryRepository.GetDateSalaryViewModel(dateSaleryviewModel);
// && _dateSalary.Id >0
if (_dateSalary != null)
{
var dateSaleryItemviewModel = new DateSalaryItemSearchModel();
dateSaleryItemviewModel.DateSalaryId = _dateSalary.Id;
dateSaleryItemviewModel.Percent = percent;
var dateSalaryItem = _dateSalaryItemRepository.Search(dateSaleryItemviewModel);
if (dateSalaryItem != null)
result = dateSalaryItem[0].Salary;
}
}
result = 0;
}
return result;
}

View File

@@ -827,7 +827,7 @@ public class RollCallApplication : IRollCallApplication
rollCall.SetEndDateTime(rollCall.EndDate!.Value, _rollCallDomainService);
}
}
_rollCallRepository.SaveChanges();
return operationResult.Succcedded();
}

View File

@@ -427,6 +427,9 @@ public class PersonalBootstrapper
services.AddTransient<ILeftWorkTempRepository, LeftWorkTempRepository>();
services.AddTransient<ILeftWorkTempApplication, LeftWorkTempApplication>();
services.AddTransient<IContactUsRepository, ContactUsRepository>();
services.AddTransient<IContactUsApplication, ContactUsApplication>();
services.AddTransient<IEmployeeAuthorizeTempRepository, EmployeeAuthorizeTempRepository>();

View File

@@ -770,15 +770,45 @@
<label class="btn btn-inverse waves-effect waves-light m-b-5 parent"> <input type="checkbox" value="1000" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> کارپوشه </span>&nbsp;</label>
@* <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="801" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> لیست مشاغل مقطوع </span> </label>
<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="1001" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> بارگذاری مدارک توسط کارفرما </span> </label>
</div> *@
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children "><input type="checkbox" disabled="disabled" value="10011" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> عدم تایید توسط ناظر - ادمین </span> </label>
</div>
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children "><input type="checkbox" disabled="disabled" value="10012" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> آپلود مدارک پرسنل جدید </span> </label>
</div>
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children"><input type="checkbox" disabled="disabled" value="10013" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> عدم تایید توسط ناظر - کلاینت </span> </label>
</div>
</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="1002" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> اعلام شروع بکار توسط کافرما </span> </label>
</div>
</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="1003" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> اعلام ترک کار توسط کافرما </span> </label>
</div>
</div>
@* بررسی مدارک پرسنل *@
<div class="parent-check">
<label class="btn btn-icon waves-effect btn-default m-b-5 open-close">

View File

@@ -771,15 +771,44 @@
</label>
<label class="btn btn-inverse waves-effect waves-light m-b-5 parent"> <input type="checkbox" value="1000" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> کارپوشه </span>&nbsp;</label>
@* <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="801" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> لیست مشاغل مقطوع </span> </label>
<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="1001" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> بارگذاری مدارک توسط کارفرما </span> </label>
</div> *@
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children "><input type="checkbox" disabled="disabled" value="10011" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> عدم تایید توسط ناظر - ادمین </span> </label>
</div>
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children "><input type="checkbox" disabled="disabled" value="10012" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> آپلود مدارک پرسنل جدید </span> </label>
</div>
<div class="child-check level3">
<label class="btn btn-inverse waves-effect waves-light m-b-5 children"><input type="checkbox" disabled="disabled" value="10013" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> عدم تایید توسط ناظر - کلاینت </span> </label>
</div>
</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="1002" class="check-btn"> &nbsp;<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="1003" class="check-btn"> &nbsp;<span style="bottom: 2px;position: relative"> اعلام ترک کار توسط کافرما </span> </label>
</div>
</div>
@* بررسی مدارک پرسنل *@

View File

@@ -81,7 +81,7 @@
<div class="bottom"></div>
</div>
<li class="active" data-menu="WorkshopDocumentRejectedForAdmin">
<li class="active" data-menu="WorkshopDocumentRejectedForAdmin" permission="10011">
<div class="d-flex align-items-center justify-content-between" id="clickWorkshopDocumentRejectedForAdminTab">
<a href="javascript:void(0);">
عدم تایید توسط ناظر(ادمین)
@@ -96,7 +96,7 @@
</li>
@if (StaticWorkshopAccounts.EmployeeDocumentWorkFlowRoleIds.Any(x => x == AuthHelper.GetUserTypeWithId().roleId))
{
<li class="" data-menu="CreatedEmployeesWorkshopDocumentForAdmin">
<li class="" data-menu="CreatedEmployeesWorkshopDocumentForAdmin" permission="10012">
<div class="d-flex align-items-center justify-content-between" id="clickCreatedEmployeesWorkshopDocumentForAdminTab">
<a href="javascript:void(0);">
آپلود مدارک پرسنل جدید
@@ -109,7 +109,7 @@
</div>
</div>
</li>
<li class="" data-menu="ClientRejectedDocumentWorkshopsForAdmin">
<li class="" data-menu="ClientRejectedDocumentWorkshopsForAdmin" permission="10013">
<div class="d-flex align-items-center justify-content-between" id="clickClientRejectedDocumentWorkshopsForAdminTab">
<a href="javascript:void(0);">
عدم تایید توسط ناظر (کلاینت)

View File

@@ -60,7 +60,7 @@
<div class="row p-2">
<div class="d-grid card-area-workflow gap-2 p-0">
<div class="gwb-card">
<div class="gwb-card" permission="1001">
<a asp-page="/Company/WorkFlow/EmployeesDocuments" class="click loadingButton">
<div class="d-flex align-items-center justify-content-between p-1 w-100">
<div class="d-flex align-items-center">
@@ -84,13 +84,13 @@
</a>
</div>
<div class="gwb-card">
<div class="gwb-card" permission="1002">
<a asp-page="/Company/WorkFlow/EmployeesNew" class="click loadingButton">
<div class="d-flex align-items-center justify-content-between p-1 w-100">
<div class="d-flex align-items-center">
<img src="~/AssetsClient/images/insuranceList.png" alt="" class="img-fluid mx-1" width="50px" />
<div class="text-start ms-1">
<div class="card-title">اعلام شروع بکار توسط کافرما</div>
<div class="card-title"> اعلام شروع بکار توسط کافرما</div>
</div>
</div>
<div class="countNumber" id="StartWorkCount">
@@ -104,13 +104,13 @@
</div>
<div class="gwb-card">
<div class="gwb-card" permission="1003">
<a asp-page="/Company/WorkFlow/EmployeesLeftWork" class="click loadingButton">
<div class="d-flex align-items-center justify-content-between p-1 w-100">
<div class="d-flex align-items-center">
<img src="~/AssetsClient/images/insuranceList.png" alt="" class="img-fluid mx-1" width="50px" />
<div class="text-start ms-1">
<div class="card-title">اعلام ترک کار توسط کافرما</div>
<div class="card-title"> اعلام ترک کار توسط کافرما</div>
</div>
</div>
<div class="countNumber" id="leftWorkCount">

Binary file not shown.

Binary file not shown.

View File

@@ -71,7 +71,7 @@
color: #0B5959;
font-size: 18px;
font-weight: 600;
width: 150px;
width: 140px;
text-align: center;
}
@@ -118,7 +118,7 @@
font-size: 18px;
font-weight: 600;
text-align: end;
width: 150px;
width: 140px;
}
.titleInfoWP {
@@ -188,10 +188,10 @@
.totalTitle {
font-size: 1rem;
font-weight: 800;
font-weight: 700;
color: #575757;
text-align: center;
margin: 6px auto;
/*margin: 6px auto;*/
}
@@ -266,6 +266,12 @@
}
.custom-padding {
padding: 0 0 0 33px;
}
@media only screen and (max-width: 1366px) {
/*.btnRadioContainer {
grid-template-columns: repeat(2, minmax(0, 1fr));
@@ -276,12 +282,19 @@
}
.totalPayWP {
font-size: 15px;
font-size: 14px;
font-weight: 800;
width: 126px;
}
.totalTitle {
font-size: 0.8rem;
}
.totalPaymentWP {
font-size: 18px;
font-weight: 700;
font-size: 14px;
font-weight: 800;
width: 126px;
}
}
@@ -346,6 +359,15 @@
text-align: center;
margin-top: 20px;
font-weight: 800;
width: 120px;
}
.errorString {
display: none;
}
.custom-padding {
padding: 0;
}
}
@@ -367,6 +389,7 @@
.totalPaymentWP {
margin-top: 18px;
width: 110px;
}
.totalPayCon {

View File

@@ -4,6 +4,7 @@ var command = {
};
let totalPrice = 0;
var workshopDataId = 0;
const isMobile = window.matchMedia('(max-width: 767px)').matches;
$(document).ready(function () {
var $inputs = $('.operations-btns input');
@@ -38,15 +39,26 @@ $(document).on('input', '.operations-btns .numberSpanInput', function () {
if (isNaN(number) || number === 0) {
$input.addClass("errored");
$('.errorString').show().text('عدد وارد شده نامعتبر است.');
if (isMobile) {
validateField($(this), "عدد وارد شده نامعتبر است.", 2500);
} else {
$('.errorString').show().text('عدد وارد شده نامعتبر است.');
}
} else if (number > 2000) {
$input.addClass("errored");
$('.errorString').show().text('تعداد وارد شده نباید بیشتر از ۲۰۰۰ باشد.');
if (isMobile) {
validateField($(this), "تعداد وارد شده نباید بیشتر از ۲۰۰۰ باشد.", 2500);
} else {
$('.errorString').show().text('تعداد وارد شده نباید بیشتر از ۲۰۰۰ باشد.');
}
//$input.val('2000');
} else if (number < 3) {
$input.addClass("errored");
$('.errorString').show().text('تعداد وارد شده باید حداقل ۳ نفر باشد.');
//$input.val('3');
if (isMobile) {
validateField($(this), "تعداد وارد شده باید حداقل ۳ نفر باشد.", 2500);
} else {
$('.errorString').show().text('تعداد وارد شده باید حداقل ۳ نفر باشد.');
}
} else {
$('.errorString').hide().text('');
$input.removeClass("errored");
@@ -130,13 +142,13 @@ function addNewWorkshop() {
var workshopHtml = `<div class="accordion-item" data-id="new_${workshopDataId}" data-new="true">
<div class="workshopListItem">
<div class="col-6 col-md-9 col-lg-8 col-xl-9">
<div class="col-6 col-md-9 col-lg-8 col-xl-8 col-xxl-9">
<div class="titleWP">
<span class="workshopNameSpan"></span>
</div>
</div>
<div class="col-6 col-md-3 col-lg-4 col-xl-3">
<div class="col-6 col-md-3 col-lg-4 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-end gap-1 gap-md-2">
<div class="badgeWP">
<span class="numberSpan">-</span>
@@ -166,7 +178,7 @@ function addNewWorkshop() {
</div>
<div class="operations-btns">
<div class="row align-items-center">
<div class="col-12 col-md-9 col-lg-8 col-xl-9">
<div class="col-12 col-md-9 col-lg-9 col-xl-8 col-xxl-9">
<div class="d-flex align-items-end gap-2">
<div class="form-group">
<div class="titleInfoWP">
@@ -218,10 +230,10 @@ function addNewWorkshop() {
</div>
</div>
<div class="col-12 col-md-3 col-lg-4 col-xl-3">
<div class="d-flex align-items-center justify-content-center gap-3">
<div class="col-12 col-md-3 col-lg-3 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-center gap-3 custom-padding">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPaymentWP" id="totalPayment_${workshopDataId}">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPayCon justify-content-center" id="totalPayment_new_${workshopDataId}">
-
</div>
@@ -590,13 +602,13 @@ function loadWorkshopData(id) {
html += `<div class="accordion-item" id="workshop_${item.id}" data-id="${item.id}" data-new="false">
<div class="workshopListItem">
<div class="col-6 col-md-9 col-lg-8 col-xl-9">
<div class="col-6 col-md-9 col-lg-8 col-xl-8 col-xxl-9">
<div class="titleWP">
<span class="workshopNameSpan">${item.workshopName}</span>
</div>
</div>
<div class="col-6 col-md-3 col-lg-4 col-xl-3">
<div class="col-6 col-md-3 col-lg-4 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-end gap-1 gap-md-2">
<div class="badgeWP">
<span class="numberSpan">${item.countPerson}</span>
@@ -629,7 +641,7 @@ function loadWorkshopData(id) {
</div>
<div class="operations-btns" style="display: ${response.data.length === index+1 ? `block` : `none`}"">
<div class="row align-items-center">
<div class="col-12 col-md-9 col-lg-8 col-xl-9">
<div class="col-12 col-md-9 col-lg-9 col-xl-8 col-xxl-9">
<div class="d-flex align-items-end gap-2">
<div class="form-group">
<div class="titleInfoWP">
@@ -681,10 +693,10 @@ function loadWorkshopData(id) {
</div>
</div>
<div class="col-12 col-md-3 col-lg-4 col-xl-3">
<div class="d-flex align-items-center justify-content-center gap-3">
<div class="col-12 col-md-3 col-lg-3 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-center gap-3 custom-padding">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPaymentWP">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPayCon" id="totalPayment_${item.id}">
<span>${item.workshopServicesAmountStr}</span>
<span> ریال</span>
@@ -728,13 +740,13 @@ function loadWorkshopData(id) {
html += `<div class="accordion-item" id="workshop_0" data-id="new_0" data-new="true">
<div class="workshopListItem">
<div class="col-6 col-md-9 col-lg-8 col-xl-9">
<div class="col-6 col-md-9 col-lg-8 col-xl-8 col-xxl-9">
<div class="titleWP">
<span class="workshopNameSpan"></span>
</div>
</div>
<div class="col-6 col-md-3 col-lg-4 col-xl-3">
<div class="col-6 col-md-3 col-lg-4 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-end gap-1 gap-md-2">
<div class="badgeWP">
<span class="numberSpan">-</span>
@@ -764,7 +776,7 @@ function loadWorkshopData(id) {
</div>
<div class="operations-btns" style="display: block">
<div class="row align-items-center">
<div class="col-12 col-md-9 col-lg-8 col-xl-10">
<div class="col-12 col-md-9 col-lg-9 col-xl-8 col-xxl-9">
<div class="d-flex align-items-end gap-2">
<div class="form-group">
<div class="titleInfoWP">
@@ -816,10 +828,10 @@ function loadWorkshopData(id) {
</div>
</div>
<div class="col-12 col-md-3 col-lg-4 col-xl-2">
<div class="d-flex align-items-center justify-content-center gap-3">
<div class="col-12 col-md-3 col-lg-3 col-xl-4 col-xxl-3">
<div class="d-flex align-items-center justify-content-center gap-3 custom-padding">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPaymentWP text-center">
<div class="totalTitle">مبلغ کل</div>
<div class="totalPayCon justify-content-center" id="totalPayment_new_0">
-
</div>