add ceo names in contracting party

This commit is contained in:
2025-09-24 12:02:36 +03:30
parent 868bb3f17a
commit 9beed6cf45
4 changed files with 50 additions and 15 deletions

View File

@@ -83,6 +83,17 @@ public class PersonalContractingParty : EntityBase
/// سمت و صاحب امضاء اوراق (فقط برای طرف حقوقی)
/// </summary>
public string LegalPosition { get; private set; }
/// <summary>
/// نام مدیر عامل (فقط برای طرف حقوقی)
/// </summary>
public string CeoFName { get; private set; }
/// <summary>
/// نام خانوادگی مدیر عامل (فقط برای طرف حقوقی)
/// </summary>
public string CeoLName { get; private set; }
#endregion
@@ -98,7 +109,8 @@ public class PersonalContractingParty : EntityBase
public PersonalContractingParty(string fName, string lName, string nationalcode, string idNumber,
/*string legalName,*/ string registerId, string nationalId, string isLegal,
string phone, string agentPhone, string address,long representativeId,
string representativeFullName, int archiveCode, string state,string city, string zone, string sureName,string legalPosition=null)
string representativeFullName, int archiveCode, string state,string city,
string zone, string sureName,string ceoFName,string ceoLName,string legalPosition=null)
{
FName = fName;
@@ -125,6 +137,8 @@ public class PersonalContractingParty : EntityBase
IsBlock = "false";
BlockTimes = 0;
LegalPosition = legalPosition;
CeoFName = ceoFName;
CeoLName = ceoLName;
}

View File

@@ -217,6 +217,8 @@ public interface IInstitutionContractApplication
public class GetInstitutionVerificationDetailsViewModel
{
public InstitutionContratVerificationParty FirstParty { get; set; }
public InstitutionContratVerificationParty SecondParty { get; set; }
public string ContractNo { get; set; }
public string CreationDate { get; set; }
public string ContractStart { get; set; }
@@ -228,6 +230,16 @@ public class GetInstitutionVerificationDetailsViewModel
public List<InstitutionContractInstallmentViewModel> Installments { get; set; }
}
public class InstitutionContratVerificationParty
{
public string CompanyNameOrFullName { get; set; }
public string NationalCodeOrNationalId { get; set; }
public string CeoName { get; set; }
public string Address { get; set; }
public string PostalCode { get; set; }
public string PhoneNumber { get; set; }
}
public class GetInstitutionVerificationDetailsWorkshopsViewModel
{
public string Name { get; set; }

View File

@@ -1150,7 +1150,6 @@ public class InstitutionContractApplication : IInstitutionContractApplication
{
return opration.Failed("شناسه ملی وارد شده تکراری است");
}
var archiveCode = _contractingPartyRepository.GetLastNewArchiveCode();
@@ -1159,7 +1158,7 @@ public class InstitutionContractApplication : IInstitutionContractApplication
"*", "*", request.RegisterId, request.NationalId,
"حقوقی",
request.PhoneNumber, request.PhoneNumber, null, representativeId, representative.FullName,
archiveCode, null, null, null, null, request.Position);
archiveCode, null, null, null, null,request.FName,request.LName,request.Position);
await _contractingPartyRepository.CreateAsync(legalContractingParty);
@@ -1201,7 +1200,7 @@ public class InstitutionContractApplication : IInstitutionContractApplication
request.NationalCode, request.IdNumber, "*", "*",
"حقیقی",
request.PhoneNumber, request.PhoneNumber, null, representativeId, representative.FullName, archiveCode,
null, null, null, null);
null, null, null, null,null,null);
await _contractingPartyRepository.CreateAsync(personalContractingParty);

View File

@@ -1678,7 +1678,11 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
.PendingForVerify)
.Include(x => x.WorkshopGroup).ThenInclude(institutionContractWorkshopGroup =>
institutionContractWorkshopGroup.WorkshopDetails)
.Include(institutionContract => institutionContract.Installments).FirstOrDefaultAsync();
.Include(institutionContract => institutionContract.Installments)
.Join(_context.PersonalContractingParties,
institutionContract => institutionContract.ContractingPartyId,
contractingParty =>contractingParty.id,
(contract, party) => new {contract,party}).FirstOrDefaultAsync();
if (query == null)
{
@@ -1687,14 +1691,14 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
var res = new GetInstitutionVerificationDetailsViewModel()
{
ContractStart = query.ContractStartFa,
ContractEnd = query.ContractEndFa,
ContractNo = query.ContractNo,
CreationDate = query.CreationDate.ToFarsi(),
TaxPrice = query.ValueAddedTax.ToMoney(),
TotalPrice = (query.TotalAmount - query.ValueAddedTax).ToMoney(),
PaymentPrice = query.TotalAmount.ToMoney(),
Installments = query.Installments.Select(x => new InstitutionContractInstallmentViewModel()
ContractStart = query.contract.ContractStartFa,
ContractEnd = query.contract.ContractEndFa,
ContractNo = query.contract.ContractNo,
CreationDate = query.contract.CreationDate.ToFarsi(),
TaxPrice = query.contract.ValueAddedTax.ToMoney(),
TotalPrice = (query.contract.TotalAmount - query.contract.ValueAddedTax).ToMoney(),
PaymentPrice = query.contract.TotalAmount.ToMoney(),
Installments = query.contract.Installments.Select(x => new InstitutionContractInstallmentViewModel()
{
Amount = x.Amount,
Description = x.Description,
@@ -1703,7 +1707,7 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
InstallmentDateGr = x.InstallmentDateGr,
InstitutionContractId = x.InstitutionContractId
}).ToList(),
Workshops = query.WorkshopGroup.WorkshopDetails
Workshops = query.contract.WorkshopGroup.WorkshopDetails
.Where(x => x.DetailType == WorkshopDetailType.Initial)
.Select(x => new GetInstitutionVerificationDetailsWorkshopsViewModel
{
@@ -1720,7 +1724,13 @@ public class InstitutionContractRepository : RepositoryBase<long, InstitutionCon
Name = x.WorkshopName,
PersonnelCount = x.PersonnelCount,
Price = x.Price.ToMoney()
}).ToList()
}).ToList(),
SecondParty = new InstitutionContratVerificationParty()
{
Address = query.contract.Address,
PhoneNumber = query.party.Phone,
CeoName = query.party.
}
};
return res;