public async Task SaveTwoFileTechnicalCheckingDataAndAttachemntsDetial(OfferCheckingContainer container) { OfferDetailModel model = container.model; CheckOfferResultModel checkingResult = container.checkingResult; SupplierCombinedDetail details = await _offerQueries.GetCombinedOfferDetail(Util.Decrypt(model.CombinedIdString)); if (details == null) { details = new SupplierCombinedDetail { Combined = await _offerQueries.GetCombinedbyId(Util.Decrypt(model.CombinedIdString)) }; } await SaveDirectPurchaseAttachment(model, details /*, offer*/); if (details.Combined.Offer.Tender.TenderStatusId != (int)Enums.TenderStatus.OffersChecking) { details.Combined.Offer.Tender.UpdateTenderStatus(Enums.TenderStatus.OffersChecking); } details.Combined.Offer.UpdateOfferTecknicalCheckingStatus(checkingResult.TechnicalOfferStatusId, checkingResult.RejectionReason, checkingResult.Notes); if (checkingResult.TechniciansReportAttachments != null) { List <TechnicianReportAttachment> technicianReportAttachments = _mapper.Map <List <TechnicianReportAttachment> >(checkingResult.TechniciansReportAttachments); details.Combined.Offer.UpdateTechnicianReportAttachments(technicianReportAttachments); } await _offerCommands.UpdateCombinedDetailAsync(details); }
public async Task SaveDirectPurchaseOneFileCheckingDataAndAttachemntsDetial(OfferCheckingContainer container) { var localContentSetting = await _offerQueries.GetLocalContentSettingsDate(); OfferDetailModel model = container.model; CheckOfferResultModel checkingResult = container.checkingResult; SupplierCombinedDetail details = await _offerQueries.GetCombinedOfferDetail(Util.Decrypt(model.CombinedIdString)); if (details == null) { details = new SupplierCombinedDetail { Combined = await _offerQueries.GetCombinedbyId(Util.Decrypt(model.CombinedIdString)) }; } await SaveDirectPurchaseAttachment(model, details /*, offer*/); await CalculateFinalPriceDirectPurchase(details.Combined.Offer); if (details.Combined.Offer.Tender.TenderStatusId != (int)Enums.TenderStatus.OffersChecking) { details.Combined.Offer.Tender.UpdateTenderStatus(Enums.TenderStatus.OffersChecking); } details.Combined.Offer.UpdateOfferFinantialCheckingStatus(checkingResult.FinantialOfferStatusId, checkingResult.FinantialRejectionReason, checkingResult.FinantialNotes); details.Combined.Offer.UpdateOfferTecknicalCheckingStatus(checkingResult.TechnicalOfferStatusId, checkingResult.RejectionReason, checkingResult.Notes); if (details.Combined.Offer.Tender.IsValidToApplyOfferLocalContentChanges(localContentSetting.Date.Value) && details.Combined.Offer.OfferlocalContentDetails != null) { details.Combined.Offer.OfferlocalContentDetails.SetIsBindedToMandatoryList(checkingResult.IsBindedToMandatoryList); } if (checkingResult.TechniciansReportAttachments != null) { List <TechnicianReportAttachment> technicianReportAttachments = _mapper.Map <List <TechnicianReportAttachment> >(checkingResult.TechniciansReportAttachments); details.Combined.Offer.UpdateTechnicianReportAttachments(technicianReportAttachments); } await _offerCommands.UpdateCombinedDetailAsync(details); }
public SupplierCombinedDetail BuildSupplierCombinedDetail() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.UpdateAttachmentDetails(1, 1, true, true, true, true, true, true, true, true, true, true, true, true); return(supplierCombinedDetail); }
public async Task <SupplierCombinedDetail> UpdateCombinedDetailAsync(SupplierCombinedDetail details) { Check.ArgumentNotNull(nameof(details), details); _context.SupplierCombinedDetails.Update(details); await _context.SaveChangesAsync(); return(details); }
public void Should_AddSpecification() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.AddSpecification(new List <SupplierSpecificationDetail>() { new SupplierSpecificationDetail() }); Assert.NotEmpty(supplierCombinedDetail.SpecificationDetails); }
public void Should_AddCalssificationAttachments() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.AddCalssificationAttachments(new List <SupplierSpecificationDetail>() { new SupplierSpecificationDetail() }); supplierCombinedDetail.ShouldNotBeNull(); }
public void Should_updateAttachmentsList() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.updateAttachmentsList(new List <SupplierSpecificationDetail>() { new SupplierSpecificationDetail() }); supplierCombinedDetail.ShouldNotBeNull(); }
public void Should_UpdateAttachmentDetails() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.UpdateAttachmentDetails(combinedDetailId, combinedId, isChamberJoiningAttached, isChamberJoiningValid, isCommercialRegisterAttached , isCommercialRegisterValid, isSaudizationAttached, isSaudizationValidDate, isSocialInsuranceAttached, isSocialInsuranceValidDate, isZakatAttached, isZakatValidDate, isSpecificationAttached, isSpecificationValidDate); supplierCombinedDetail.UpdateAttachmentDetails(0, combinedId, isChamberJoiningAttached, isChamberJoiningValid, isCommercialRegisterAttached , isCommercialRegisterValid, isSaudizationAttached, isSaudizationValidDate, isSocialInsuranceAttached, isSocialInsuranceValidDate, isZakatAttached, isZakatValidDate, isSpecificationAttached, isSpecificationValidDate); supplierCombinedDetail.ShouldNotBeNull(); }
public async Task <Offer> AddFinancialOfferAttachmentsInVRO(OfferDetailsForCheckingModel m) { SupplierCombinedDetail details = await _offerQueries.GetCombinedOfferDetailForVRO(Util.Decrypt(m.CombinedIdString)); if (details == null) { details = new SupplierCombinedDetail { Combined = await _offerQueries.GetCombinedbyId(Util.Decrypt(m.CombinedIdString)) }; } var offer = details.Combined.Offer; if (offer.Tender.TenderStatusId != (int)Enums.TenderStatus.VROOffersFinancialChecking) { offer.Tender.UpdateTenderStatus(Enums.TenderStatus.VROOffersFinancialChecking, "", _httpContextAccessor.HttpContext.User.UserId(), TenderActions.FinancialCheckingStarted); } List <SupplierBankGuaranteeDetail> GuaranteesLst = new List <SupplierBankGuaranteeDetail>(); List <SupplierSpecificationDetail> SpecificationsLst = new List <SupplierSpecificationDetail>(); foreach (var item in m.SpecificationsFiles) { var Specification = new SupplierSpecificationDetail(item.SpecificationId, Util.Decrypt(m.CombinedIdString), item.IsForApplier, item.Degree, item.ConstructionWorkId, item.MaintenanceRunningWorkId); SpecificationsLst.Add(Specification); } foreach (var item in m.BankGuaranteeFiles) { var BankGuarantee = new SupplierBankGuaranteeDetail(item.BankGuaranteeId, offer.OfferId, item.IsBankGuaranteeValid, item.GuaranteeNumber, item.BankId.Value, item.Amount, item.GuaranteeStartDate, item.GuaranteeEndDate, item.GuaranteeDays); GuaranteesLst.Add(BankGuarantee); } offer.UpdateOfferAttachments(m.IsOfferCopyAttached, m.IsOfferLetterAttached, m.OfferLetterNumber, m.OfferLetterDate, m.IsVisitationAttached, m.IsPurchaseBillAttached, m.IsBankGuaranteeAttached); offer.updateBankGurnteeList(GuaranteesLst); offer.UpdateVROOfferFinancialWeight(m.FinancialWeight); offer.UpdateOpeningDiscountNotes(m.Discount, m.DiscountNotes); details.UpdateAttachmentDetails(details.CombinedDetailId, Util.Decrypt(m.CombinedIdString), m.IsChamberJoiningAttached, m.IsChamberJoiningValid, m.IsCommercialRegisterAttached, m.IsCommercialRegisterValid, m.IsSaudizationAttached, m.IsSaudizationValidDate, m.IsSocialInsuranceAttached, m.IsSocialInsuranceValidDate, m.IsZakatAttached, m.IsZakatValidDate, m.IsSpecificationAttached, m.IsSpecificationValidDate); details.updateAttachmentsList(SpecificationsLst); await CalcFinalPrice(offer); await _offerCommands.UpdateCombinedDetailAsync(details); return(offer); }
public async Task <SupplierCombinedDetail> SaveCombinedTechnicalDetailsVRO(OfferDetailModel m) { bool isBankGuaranteeAttached = false; Offer offer = await _offerQueries.GetOfferById(Util.Decrypt(m.OfferIdString)); SupplierCombinedDetail details = await _offerQueries.GetCombinedOfferDetail(Util.Decrypt(m.CombinedIdString)); if (details == null) { details = new SupplierCombinedDetail(); } List <SupplierBankGuaranteeDetail> GuaranteesLst = new List <SupplierBankGuaranteeDetail>(); List <SupplierSpecificationDetail> SpecificationsLst = new List <SupplierSpecificationDetail>(); foreach (var item in m.BankGuaranteeFiles) { var BankGuarantee = new SupplierBankGuaranteeDetail(item.BankGuaranteeId, offer.OfferId, item.IsBankGuaranteeValid, item.GuaranteeNumber, item.BankId.Value, item.Amount, item.GuaranteeStartDate, item.GuaranteeEndDate, item.GuaranteeDays); GuaranteesLst.Add(BankGuarantee); } isBankGuaranteeAttached = true; offer.UpdateOfferFinantialCheckingDetails(m.IsFinaintialOfferLetterAttached, m.FinantialOfferLetterNumber, m.FinantialOfferLetterDate, m.IsFinantialOfferLetterCopyAttached, isBankGuaranteeAttached); foreach (var item in m.SpecificationsFiles) { var Specification = new SupplierSpecificationDetail(item.SpecificationId, Util.Decrypt(m.CombinedIdString), item.IsForApplier, item.Degree, item.ConstructionWorkId, item.MaintenanceRunningWorkId); SpecificationsLst.Add(Specification); } if (m.CombinedOwner == true) { offer.UpdateOfferAttachments(m.IsOfferCopyAttached, m.IsOfferLetterAttached, m.OfferLetterNumber, m.OfferLetterDate, m.IsVisitationAttached, m.IsPurchaseBillAttached, m.IsBankGuaranteeAttached); offer.UpdateOfferFinancialAttachments(m.IsFinaintialOfferLetterAttached, m.IsFinantialOfferLetterCopyAttached); offer.UpdateBankGurnteesDetails(GuaranteesLst); } details.UpdateAttachmentDetails(details.CombinedDetailId, Util.Decrypt(m.CombinedIdString), m.IsChamberJoiningAttached, m.IsChamberJoiningValid, m.IsCommercialRegisterAttached, m.IsCommercialRegisterValid, m.IsSaudizationAttached, m.IsSaudizationValidDate, m.IsSocialInsuranceAttached, m.IsSocialInsuranceValidDate, m.IsZakatAttached, m.IsZakatValidDate, m.IsSpecificationAttached, m.IsSpecificationValidDate); details.updateAttachmentsList(SpecificationsLst); offer = await _offerCommands.UpdateAsync(offer); details = await _offerCommands.UpdateCombinedDetailAsync(details); return(details); }
public async Task <SupplierCombinedDetail> SaveDirectPurchaseAttachmentsChecking(OfferDetailModel m) { SupplierCombinedDetail details = await _offerQueries.GetCombinedOfferDetail(Util.Decrypt(m.CombinedIdString)); if (details == null) { details = new SupplierCombinedDetail { Combined = await _offerQueries.GetCombinedbyId(Util.Decrypt(m.CombinedIdString)) }; } /*SupplierCombinedDetail */ CheckIfUserCanAccessLowBudgetTender(details.Combined.Offer.Tender.IsLowBudgetDirectPurchase, details.Combined.Offer.Tender.DirectPurchaseMemberId, _httpContextAccessor.HttpContext.User.UserId()); details = await SaveDirectPurchaseAttachment(m, details /*, offer*/); details = await _offerCommands.UpdateCombinedDetailAsync(details); return(details); }
private async Task <SupplierCombinedDetail> SaveDirectPurchaseAttachment(OfferDetailModel model, SupplierCombinedDetail details /*, Offer offer*/) { var statuses = GetOfferDirectPurchaseStatuses(details.Combined.Offer); bool isOneFile = statuses.Item1, isTechnical = statuses.Item2, isFinancial = statuses.Item3; List <SupplierSpecificationDetail> SpecificationsLst = new List <SupplierSpecificationDetail>(); if ((isOneFile || isTechnical) && model.CombinedOwner) { details.Combined.Offer.UpdateOfferAttachments(model.IsOfferCopyAttached, model.IsOfferLetterAttached, model.OfferLetterNumber, model.OfferLetterDate, model.IsVisitationAttached, model.IsPurchaseBillAttached, model.IsBankGuaranteeAttached); } if ((isOneFile || isFinancial) && model.CombinedOwner) { List <SupplierBankGuaranteeDetail> GuaranteesLst = new List <SupplierBankGuaranteeDetail>(); foreach (var item in model.BankGuaranteeFiles) { var BankGuarantee = new SupplierBankGuaranteeDetail(item.BankGuaranteeId, details.Combined.Offer.OfferId, item.IsBankGuaranteeValid, item.GuaranteeNumber, item.BankId.Value, item.Amount, item.GuaranteeStartDate, item.GuaranteeEndDate, item.GuaranteeDays); GuaranteesLst.Add(BankGuarantee); } details.Combined.Offer.UpdateBankGurnteesDetails(GuaranteesLst); details.Combined.Offer.UpdateOfferFinantialCheckingDetails(model.IsFinaintialOfferLetterAttached, model.FinantialOfferLetterNumber, model.FinantialOfferLetterDate, model.IsFinantialOfferLetterCopyAttached, model.IsBankGuaranteeAttached); } if (isOneFile || isTechnical) { foreach (var item in model.SpecificationsFiles) { var Specification = new SupplierSpecificationDetail(item.SpecificationId, Util.Decrypt(model.CombinedIdString), item.IsForApplier, item.Degree, item.ConstructionWorkId, item.MaintenanceRunningWorkId); SpecificationsLst.Add(Specification); } details.updateAttachmentsList(SpecificationsLst); details.UpdateAttachmentDetails(details.CombinedDetailId, Util.Decrypt(model.CombinedIdString), model.IsChamberJoiningAttached, model.IsChamberJoiningValid, model.IsCommercialRegisterAttached, model.IsCommercialRegisterValid, model.IsSaudizationAttached, model.IsSaudizationValidDate, model.IsSocialInsuranceAttached, model.IsSocialInsuranceValidDate, model.IsZakatAttached, model.IsZakatValidDate, model.IsSpecificationAttached, model.IsSpecificationValidDate); if (details.Combined.Offer.Tender.TenderStatusId != (int)Enums.TenderStatus.OffersChecking) { details.Combined.Offer.Tender.UpdateTenderStatus(Enums.TenderStatus.OffersChecking); } } if (isFinancial && details.Combined.Offer.Tender.TenderStatusId != (int)Enums.TenderStatus.OffersFinancialChecking) { details.Combined.Offer.Tender.UpdateTenderStatus(Enums.TenderStatus.OffersFinancialChecking); } return(details); }
public void Should_Construct_SupplierCombinedDetail() { SupplierCombinedDetail supplierCombinedDetail = new SupplierCombinedDetail(); supplierCombinedDetail.ShouldNotBeNull(); }