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 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);
        }