Merge branch 'Feature/institution-contract/refactor-creation' into Main

This commit is contained in:
2025-12-30 16:44:40 +03:30

View File

@@ -87,7 +87,9 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
ISmsResultRepository smsResultRepository, IFinancialTransactionRepository financialTransactionRepository,
IFinancialStatmentRepository financialStatmentRepository, IHubContext<SendSmsHub> hubContext,
ILogger<InstitutionContractRepository> logger, IUidService uidService,
IContractingPartyTempRepository contractingPartyTempRepository, IPersonalContractingPartyRepository contractingPartyRepository, IRepresentativeRepository representativeRepository, IAccountApplication accountApplication) : base(context)
IContractingPartyTempRepository contractingPartyTempRepository,
IPersonalContractingPartyRepository contractingPartyRepository,
IRepresentativeRepository representativeRepository, IAccountApplication accountApplication) : base(context)
{
_context = context;
_employerRepository = employerRepository;
@@ -5307,6 +5309,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
Gender = contractingParty.Gender,
PhoneNumber = contractingParty.Phone,
IsAuth = true,
BirthDateFa = contractingParty.DateOfBirth.ToFarsi()
};
result.RealParty = realParty;
result.LegalParty = null;
@@ -5502,9 +5505,9 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
personalContractingParty.IdNumberSerial, realCommand.BirthDateFa, realCommand.Gender,
realCommand.PhoneNumber);
}
}
contractingParty = personalContractingParty;
}
break;
}
@@ -5520,7 +5523,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
throw new BadRequestException("دیتای درخواست شده نامعتبر است");
}
List<WorkshopTempViewModel> workshopDetails=[];
List<WorkshopTempViewModel> workshopDetails = [];
if (contractingParty != null)
{
var employerWorkshopIds = _context.Employers
@@ -5559,11 +5562,10 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
RollCallInPerson = false,
};
}).ToList();
}
creationTemp.SetContractingPartyContactInfo(request.Address, request.City, request.Province,
request.ContactInfos,request.RepresentativeId);
request.ContactInfos, request.RepresentativeId);
await _institutionContractCreationTemp.ReplaceOneAsync(
x => x.Id == creationTemp.Id,
@@ -5989,12 +5991,15 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
}
else
{
OperationResult<PersonalContractingParty> contractingPartyResult = institutionContractTemp.ContractingPartyLegalType switch
OperationResult<PersonalContractingParty> contractingPartyResult =
institutionContractTemp.ContractingPartyLegalType switch
{
LegalType.Legal => await CreateLegalContractingPartyEntity(institutionContractTemp.LegalParty, institutionContractTemp.RepresentativeId,
LegalType.Legal => await CreateLegalContractingPartyEntity(institutionContractTemp.LegalParty,
institutionContractTemp.RepresentativeId,
institutionContractTemp.Address,
institutionContractTemp.City, institutionContractTemp.Province),
LegalType.Real => await CreateRealContractingPartyEntity(institutionContractTemp.RealParty, institutionContractTemp.RepresentativeId,
LegalType.Real => await CreateRealContractingPartyEntity(institutionContractTemp.RealParty,
institutionContractTemp.RepresentativeId,
institutionContractTemp.Address,
institutionContractTemp.City, institutionContractTemp.Province),
_ => throw new BadRequestException("نوع طرف قرارداد مشخص نشده است")
@@ -6024,7 +6029,8 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
if (_context.InstitutionContractSet.Any(x =>
x.ContractingPartyId == contractingPartyId && x.IsActiveString == "true"))
return opration.Failed("برای این طرف قرارداد قبلا قرارداد اصلی ایجاد شده است، شما میتوانید از تمدید استفاده کنید");
return opration.Failed(
"برای این طرف قرارداد قبلا قرارداد اصلی ایجاد شده است، شما میتوانید از تمدید استفاده کنید");
if (string.IsNullOrWhiteSpace(contractStart))
@@ -6102,7 +6108,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
var oneMonthPayment = selectedDuration.OneMonthPaymentDiscounted.MoneyToDouble();
var contractingPartyFullName = contractingParty.IsLegal=="حقیقی"
var contractingPartyFullName = contractingParty.IsLegal == "حقیقی"
? contractingParty.FName + " " + contractingParty.LName
: contractingParty.LName;
@@ -6120,7 +6126,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
contractStart, contractEndGr, selectedDuration.ContractEnd,
oneMonthPayment, selectedDuration.DailyCompenseation.MoneyToDouble(),
selectedDuration.Obligation.MoneyToDouble(), totalAmount,
0, workshopsCount, employeeCount,null,
0, workshopsCount, employeeCount, null,
"NotOfficial", "JobRelation", hasValueAddedTax,
payment.Tax.MoneyToDouble(), [],
request.LawId, payment.DiscountPercetage, payment.DiscountedAmount.MoneyToDouble());
@@ -6199,6 +6205,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
_context.InstitutionContractContactInfos.Add(contactinfo);
}
}
var userPass = contractingParty.IsLegal == "حقیقی"
? contractingParty.Nationalcode
: contractingParty.NationalId;
@@ -6318,6 +6325,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
return operation.Succcedded(personalContractingParty);
}
#endregion