Merge branch 'Feature/institution-contract/refactor-creation' into Main
This commit is contained in:
@@ -87,7 +87,9 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
ISmsResultRepository smsResultRepository, IFinancialTransactionRepository financialTransactionRepository,
|
ISmsResultRepository smsResultRepository, IFinancialTransactionRepository financialTransactionRepository,
|
||||||
IFinancialStatmentRepository financialStatmentRepository, IHubContext<SendSmsHub> hubContext,
|
IFinancialStatmentRepository financialStatmentRepository, IHubContext<SendSmsHub> hubContext,
|
||||||
ILogger<InstitutionContractRepository> logger, IUidService uidService,
|
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;
|
_context = context;
|
||||||
_employerRepository = employerRepository;
|
_employerRepository = employerRepository;
|
||||||
@@ -5307,6 +5309,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
Gender = contractingParty.Gender,
|
Gender = contractingParty.Gender,
|
||||||
PhoneNumber = contractingParty.Phone,
|
PhoneNumber = contractingParty.Phone,
|
||||||
IsAuth = true,
|
IsAuth = true,
|
||||||
|
BirthDateFa = contractingParty.DateOfBirth.ToFarsi()
|
||||||
};
|
};
|
||||||
result.RealParty = realParty;
|
result.RealParty = realParty;
|
||||||
result.LegalParty = null;
|
result.LegalParty = null;
|
||||||
@@ -5502,10 +5505,10 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
personalContractingParty.IdNumberSerial, realCommand.BirthDateFa, realCommand.Gender,
|
personalContractingParty.IdNumberSerial, realCommand.BirthDateFa, realCommand.Gender,
|
||||||
realCommand.PhoneNumber);
|
realCommand.PhoneNumber);
|
||||||
}
|
}
|
||||||
|
|
||||||
contractingParty = personalContractingParty;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
contractingParty = personalContractingParty;
|
||||||
|
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -5520,7 +5523,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
throw new BadRequestException("دیتای درخواست شده نامعتبر است");
|
throw new BadRequestException("دیتای درخواست شده نامعتبر است");
|
||||||
}
|
}
|
||||||
|
|
||||||
List<WorkshopTempViewModel> workshopDetails=[];
|
List<WorkshopTempViewModel> workshopDetails = [];
|
||||||
if (contractingParty != null)
|
if (contractingParty != null)
|
||||||
{
|
{
|
||||||
var employerWorkshopIds = _context.Employers
|
var employerWorkshopIds = _context.Employers
|
||||||
@@ -5559,18 +5562,17 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
RollCallInPerson = false,
|
RollCallInPerson = false,
|
||||||
};
|
};
|
||||||
}).ToList();
|
}).ToList();
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
creationTemp.SetContractingPartyContactInfo(request.Address, request.City, request.Province,
|
creationTemp.SetContractingPartyContactInfo(request.Address, request.City, request.Province,
|
||||||
request.ContactInfos,request.RepresentativeId);
|
request.ContactInfos, request.RepresentativeId);
|
||||||
|
|
||||||
await _institutionContractCreationTemp.ReplaceOneAsync(
|
await _institutionContractCreationTemp.ReplaceOneAsync(
|
||||||
x => x.Id == creationTemp.Id,
|
x => x.Id == creationTemp.Id,
|
||||||
creationTemp
|
creationTemp
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
||||||
var res = new InstitutionContractCreationWorkshopsResponse()
|
var res = new InstitutionContractCreationWorkshopsResponse()
|
||||||
{
|
{
|
||||||
TotalAmount = workshopDetails.Sum(x => x.WorkshopServicesAmount).ToMoney(),
|
TotalAmount = workshopDetails.Sum(x => x.WorkshopServicesAmount).ToMoney(),
|
||||||
@@ -5959,7 +5961,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
Monthly = monthlyPayment
|
Monthly = monthlyPayment
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
public async Task<OperationResult> CreationComplete(InstitutionContractExtensionCompleteRequest request)
|
public async Task<OperationResult> CreationComplete(InstitutionContractExtensionCompleteRequest request)
|
||||||
{
|
{
|
||||||
@@ -5989,16 +5991,19 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
OperationResult<PersonalContractingParty> contractingPartyResult = institutionContractTemp.ContractingPartyLegalType switch
|
OperationResult<PersonalContractingParty> contractingPartyResult =
|
||||||
{
|
institutionContractTemp.ContractingPartyLegalType switch
|
||||||
LegalType.Legal => await CreateLegalContractingPartyEntity(institutionContractTemp.LegalParty, institutionContractTemp.RepresentativeId,
|
{
|
||||||
institutionContractTemp.Address,
|
LegalType.Legal => await CreateLegalContractingPartyEntity(institutionContractTemp.LegalParty,
|
||||||
institutionContractTemp.City, institutionContractTemp.Province),
|
institutionContractTemp.RepresentativeId,
|
||||||
LegalType.Real => await CreateRealContractingPartyEntity(institutionContractTemp.RealParty, institutionContractTemp.RepresentativeId,
|
institutionContractTemp.Address,
|
||||||
institutionContractTemp.Address,
|
institutionContractTemp.City, institutionContractTemp.Province),
|
||||||
institutionContractTemp.City, institutionContractTemp.Province),
|
LegalType.Real => await CreateRealContractingPartyEntity(institutionContractTemp.RealParty,
|
||||||
_ => throw new BadRequestException("نوع طرف قرارداد مشخص نشده است")
|
institutionContractTemp.RepresentativeId,
|
||||||
};
|
institutionContractTemp.Address,
|
||||||
|
institutionContractTemp.City, institutionContractTemp.Province),
|
||||||
|
_ => throw new BadRequestException("نوع طرف قرارداد مشخص نشده است")
|
||||||
|
};
|
||||||
if (!contractingPartyResult.IsSuccedded)
|
if (!contractingPartyResult.IsSuccedded)
|
||||||
throw new BadRequestException(contractingPartyResult.Message);
|
throw new BadRequestException(contractingPartyResult.Message);
|
||||||
contractingParty = contractingPartyResult.Data;
|
contractingParty = contractingPartyResult.Data;
|
||||||
@@ -6021,10 +6026,11 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
var representative = _representativeRepository.Get(institutionContractTemp.RepresentativeId);
|
var representative = _representativeRepository.Get(institutionContractTemp.RepresentativeId);
|
||||||
if (representative == null)
|
if (representative == null)
|
||||||
return opration.Failed("معرف مورد نظر یافت نشد");
|
return opration.Failed("معرف مورد نظر یافت نشد");
|
||||||
|
|
||||||
if (_context.InstitutionContractSet.Any(x =>
|
if (_context.InstitutionContractSet.Any(x =>
|
||||||
x.ContractingPartyId == contractingPartyId && x.IsActiveString == "true"))
|
x.ContractingPartyId == contractingPartyId && x.IsActiveString == "true"))
|
||||||
return opration.Failed("برای این طرف قرارداد قبلا قرارداد اصلی ایجاد شده است، شما میتوانید از تمدید استفاده کنید");
|
return opration.Failed(
|
||||||
|
"برای این طرف قرارداد قبلا قرارداد اصلی ایجاد شده است، شما میتوانید از تمدید استفاده کنید");
|
||||||
|
|
||||||
|
|
||||||
if (string.IsNullOrWhiteSpace(contractStart))
|
if (string.IsNullOrWhiteSpace(contractStart))
|
||||||
@@ -6048,7 +6054,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
if (dateMessages)
|
if (dateMessages)
|
||||||
return opration.Failed(dateMaessageResult);
|
return opration.Failed(dateMaessageResult);
|
||||||
|
|
||||||
|
|
||||||
var syear = contractStart.Substring(0, 4);
|
var syear = contractStart.Substring(0, 4);
|
||||||
var smonth = contractStart.Substring(5, 2);
|
var smonth = contractStart.Substring(5, 2);
|
||||||
var sday = contractStart.Substring(8, 2);
|
var sday = contractStart.Substring(8, 2);
|
||||||
@@ -6060,7 +6066,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
var contractEndGr = selectedDuration.ContractEnd.ToGeorgianDateTime();
|
var contractEndGr = selectedDuration.ContractEnd.ToGeorgianDateTime();
|
||||||
|
|
||||||
var contractDateGr = contractStart.ToGeorgianDateTime();
|
var contractDateGr = contractStart.ToGeorgianDateTime();
|
||||||
|
|
||||||
|
|
||||||
if (institutionContractTemp.Address != null && institutionContractTemp.Province == null)
|
if (institutionContractTemp.Address != null && institutionContractTemp.Province == null)
|
||||||
{
|
{
|
||||||
@@ -6102,7 +6108,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
var oneMonthPayment = selectedDuration.OneMonthPaymentDiscounted.MoneyToDouble();
|
var oneMonthPayment = selectedDuration.OneMonthPaymentDiscounted.MoneyToDouble();
|
||||||
|
|
||||||
|
|
||||||
var contractingPartyFullName = contractingParty.IsLegal=="حقیقی"
|
var contractingPartyFullName = contractingParty.IsLegal == "حقیقی"
|
||||||
? contractingParty.FName + " " + contractingParty.LName
|
? contractingParty.FName + " " + contractingParty.LName
|
||||||
: contractingParty.LName;
|
: contractingParty.LName;
|
||||||
|
|
||||||
@@ -6119,8 +6125,8 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
institutionContractTemp.Address, contractStartGr,
|
institutionContractTemp.Address, contractStartGr,
|
||||||
contractStart, contractEndGr, selectedDuration.ContractEnd,
|
contractStart, contractEndGr, selectedDuration.ContractEnd,
|
||||||
oneMonthPayment, selectedDuration.DailyCompenseation.MoneyToDouble(),
|
oneMonthPayment, selectedDuration.DailyCompenseation.MoneyToDouble(),
|
||||||
selectedDuration.Obligation.MoneyToDouble(), totalAmount,
|
selectedDuration.Obligation.MoneyToDouble(), totalAmount,
|
||||||
0, workshopsCount, employeeCount,null,
|
0, workshopsCount, employeeCount, null,
|
||||||
"NotOfficial", "JobRelation", hasValueAddedTax,
|
"NotOfficial", "JobRelation", hasValueAddedTax,
|
||||||
payment.Tax.MoneyToDouble(), [],
|
payment.Tax.MoneyToDouble(), [],
|
||||||
request.LawId, payment.DiscountPercetage, payment.DiscountedAmount.MoneyToDouble());
|
request.LawId, payment.DiscountPercetage, payment.DiscountedAmount.MoneyToDouble());
|
||||||
@@ -6199,6 +6205,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
_context.InstitutionContractContactInfos.Add(contactinfo);
|
_context.InstitutionContractContactInfos.Add(contactinfo);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var userPass = contractingParty.IsLegal == "حقیقی"
|
var userPass = contractingParty.IsLegal == "حقیقی"
|
||||||
? contractingParty.Nationalcode
|
? contractingParty.Nationalcode
|
||||||
: contractingParty.NationalId;
|
: contractingParty.NationalId;
|
||||||
@@ -6225,8 +6232,8 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
return opration.Succcedded();
|
return opration.Succcedded();
|
||||||
}
|
}
|
||||||
|
|
||||||
private async Task<OperationResult<PersonalContractingParty>> CreateLegalContractingPartyEntity(
|
private async Task<OperationResult<PersonalContractingParty>> CreateLegalContractingPartyEntity(
|
||||||
InstitutionContractCreationTempLegalParty request, long representativeId, string address, string city,
|
InstitutionContractCreationTempLegalParty request, long representativeId, string address, string city,
|
||||||
string state)
|
string state)
|
||||||
{
|
{
|
||||||
var opration = new OperationResult<PersonalContractingParty>();
|
var opration = new OperationResult<PersonalContractingParty>();
|
||||||
@@ -6318,6 +6325,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
|
|||||||
|
|
||||||
return operation.Succcedded(personalContractingParty);
|
return operation.Succcedded(personalContractingParty);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user