private async Task EvaluateSupplierPoints(PreQualificationApplyDocumentsModel applyDocumentsModel, string supplierCr)
        {
            await PrepareQualificationDataBeforeEvaluation(applyDocumentsModel);

            applyDocumentsModel.SupplierId = supplierCr;
            await _SupplierQualificationDocumentsAppService.ApplyDocsforSupplier(applyDocumentsModel, true);
        }
示例#2
0
        public PreQualificationApplyDocumentsModel GetApplyDocumentsModelMediumQulaification()
        {
            PreQualificationApplyDocumentsModel applyDocumentsModel = new PreQualificationApplyDocumentsModel()
            {
                QualificationTypeId                      = (int)Enums.PreQualificationType.Medium,
                SupplierId                               = "5956275283",
                PreQualificationIdString                 = Util.Encrypt(1),
                QualificationStatusId                    = 1,
                lstQualificationSupplierDataModel        = GetListOfMediumQualificationTechDataModel(),
                preQualificationSupplierAttachmentModels = new List <PreQualificationSupplierAttachmentModel>
                {
                    new PreQualificationSupplierAttachmentModel
                    {
                        FileName = "Test File", FileNetReferenceId = "ddv122122"
                    }
                },
                QualityAssuranceStandardsAttachmentModels = new List <QualificationAttachmentModel>()
                {
                    new QualificationAttachmentModel()
                    {
                        AttachmentId = 1, FileName = "323", FileNetReferenceId = "32", SupPreQAttachmentId = 2
                    }
                },
                EnvironmentalHealthSafetyStandardsAttachmentModels = new List <QualificationAttachmentModel>()
                {
                    new QualificationAttachmentModel()
                    {
                        FileName = "Name", AttachmentId = 1, FileNetReferenceId = "refere", SupPreQAttachmentId = 1
                    }
                }
            };

            return(applyDocumentsModel);
        }
        public async Task <PreQualificationApplyDocumentsModel> GetQualificationSupplierData(int qualificationId, string supplierId)
        {
            var model = new PreQualificationApplyDocumentsModel()
            {
                PreQualificationResult   = 0,
                PreQualificationIdString = Util.Encrypt(qualificationId)
            };

            List <QualificationSupplierDataModel> lstQualificationSupplierDataModel = await GetQualificationSupplierDataModel(qualificationId, supplierId);

            model = await PrepareQualificationData(model, lstQualificationSupplierDataModel);

            model.EditMode = true;
            return(model);
        }
        private async Task PrepareQualificationDataBeforeEvaluation(PreQualificationApplyDocumentsModel applyDocumentsModel)
        {
            applyDocumentsModel.preQualificationSupplierAttachmentModels = await PreparePostedSupplierAttachmentsModel(applyDocumentsModel.AttachmentRefrences);

            applyDocumentsModel.InsuranceAttachmentModels = await PrepareQualificationAttachmentModels(applyDocumentsModel.FileReferenceForInsurance);

            applyDocumentsModel.QualityAssuranceStandardsAttachmentModels = await PrepareQualificationAttachmentModels(applyDocumentsModel.FileReferenceForQualityAssuranceStandards);

            applyDocumentsModel.EnvironmentalHealthSafetyStandardsAttachmentModels = await PrepareQualificationAttachmentModels(applyDocumentsModel.FileReferenceForEnvironmentalHealthSafetyStandards);

            applyDocumentsModel.lstQualificationSupplierDataModel =
                applyDocumentsModel.lstQualificationSupplierTechDataModel != null
                ? applyDocumentsModel.lstQualificationSupplierTechDataModel.Concat(applyDocumentsModel.lstQualificationSupplierFinancialDataModel).ToList()
                : applyDocumentsModel.lstQualificationSupplierDataModel;
        }
示例#5
0
        public PreQualificationApplyDocumentsModel GetApplyDocumentsModelSmallQulaification()
        {
            PreQualificationApplyDocumentsModel applyDocumentsModel = new PreQualificationApplyDocumentsModel()
            {
                QualificationTypeId                      = (int)Enums.PreQualificationType.Small,
                SupplierId                               = "5956275283",
                PreQualificationIdString                 = Util.Encrypt(1),
                QualificationStatusId                    = 1,
                lstQualificationSupplierDataModel        = GetListOfSmallQualificationTechDataModel(),
                preQualificationSupplierAttachmentModels = new List <PreQualificationSupplierAttachmentModel>
                {
                    new PreQualificationSupplierAttachmentModel
                    {
                        FileName = "Test File", FileNetReferenceId = "ddv122122"
                    }
                },
            };

            return(applyDocumentsModel);
        }
示例#6
0
        public PreQualificationApplyDocumentsModel GetApplyDocumentsModelLargeQulaification()
        {
            PreQualificationApplyDocumentsModel applyDocumentsModel = new PreQualificationApplyDocumentsModel()
            {
                QualificationTypeId                      = (int)Enums.PreQualificationType.Large,
                SupplierId                               = "1010000154",
                PreQualificationIdString                 = Util.Encrypt(1),
                QualificationStatusId                    = 1,
                lstQualificationSupplierDataModel        = GetListOfLargeQualificationTechDataModel(),
                preQualificationSupplierAttachmentModels = new List <PreQualificationSupplierAttachmentModel>
                {
                    new PreQualificationSupplierAttachmentModel
                    {
                        FileName = "Test File", FileNetReferenceId = "ddv122122"
                    }
                },
                lstQualificationSupplierProjectModel = new List <QualificationSupplierProjectModel>()
                {
                    new QualificationSupplierProjectModel()
                    {
                        TenderId = 1, ContractName = "Con Name", ContractValue = 1000, Description = "Des", OwnerName = "Owner Name", StartDate = DateTime.Now, EndDate = DateTime.Now.AddDays(1)
                    }
                },
                QualityAssuranceStandardsAttachmentModels = new List <QualificationAttachmentModel>()
                {
                    new QualificationAttachmentModel()
                    {
                        AttachmentId = 1, FileName = "323", FileNetReferenceId = "32", SupPreQAttachmentId = 2
                    }
                },
                EnvironmentalHealthSafetyStandardsAttachmentModels = new List <QualificationAttachmentModel>()
                {
                    new QualificationAttachmentModel()
                    {
                        FileName = "Name", AttachmentId = 1, FileNetReferenceId = "refere", SupPreQAttachmentId = 1
                    }
                }
            };

            return(applyDocumentsModel);
        }
示例#7
0
        public async Task RemoveSupplierDocAndEvaluationAsync(PreQualificationApplyDocumentsModel model, string supplierId)
        {
            model.PreQualificationId = Util.Decrypt(model.PreQualificationIdString);


            var supplierFinancialData = await _context.QualificationSupplierDataYearly.Where(a => a.TenderId == model.PreQualificationId && a.SupplierSelectedCr == supplierId).ToListAsync();



            var supplierData = await _context.QualificationSupplierData.Where(a => a.SupplierSelectedCr == supplierId && a.TenderId == model.PreQualificationId).Includes(a => a.QualificationSupplierProjects).Includes(a => a.QualificationConfigurationAttachments).ToListAsync();


            var finalresult = await _context.QualificationFinalResult.Where(a => a.SupplierSelectedCr == supplierId && a.TenderId == model.PreQualificationId).FirstOrDefaultAsync();



            _context.QualificationSupplierDataYearly.RemoveRange(supplierFinancialData);
            _context.QualificationSupplierData.RemoveRange(supplierData);
            _context.QualificationFinalResult.RemoveRange(finalresult);

            await _context.SaveChangesAsync();
        }
        private async Task <PreQualificationApplyDocumentsModel> bindFinancialPropertyAsync(PreQualificationApplyDocumentsModel model)
        {
            if (model.lstQualificationSupplierFinancialDataModel.FirstOrDefault().QualificationTypeId == (int)Enums.PreQualificationType.Small)
            {
                model.CashEquivalents    = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CashEquivalents && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                model.AccountsReceivable = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.AccountsReceivable && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                model.CurrentLiabilities = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
            }
            else if (model.lstQualificationSupplierFinancialDataModel.FirstOrDefault().QualificationTypeId == (int)Enums.PreQualificationType.Medium ||
                     model.lstQualificationSupplierFinancialDataModel.FirstOrDefault().QualificationTypeId == (int)Enums.PreQualificationType.Large)
            {
                model.CurrentAssets      = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentAssets && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                model.CashEquivalents    = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CashEquivalents && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                model.AccountsReceivable = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.AccountsReceivable && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                model.CurrentLiabilities = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;

                model.CurrentAssets1      = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentAssets && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                model.CashEquivalents1    = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CashEquivalents && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                model.AccountsReceivable1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.AccountsReceivable && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                model.CurrentLiabilities1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;



                model.CurrentAssets2      = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentAssets && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;
                model.CashEquivalents2    = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CashEquivalents && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;
                model.AccountsReceivable2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.AccountsReceivable && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;
                model.CurrentLiabilities2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.CurrentLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;


                if (model.lstQualificationSupplierFinancialDataModel.FirstOrDefault().QualificationTypeId == (int)Enums.PreQualificationType.Large)
                {
                    model.NetProfit  = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.NetProfit && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                    model.NetProfit1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.NetProfit && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                    model.NetProfit2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.NetProfit && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;



                    model.TotalRevenue  = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalRevenue && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                    model.TotalRevenue1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalRevenue && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                    model.TotalRevenue2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalRevenue && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;


                    model.TotalLiabilities  = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                    model.TotalLiabilities1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                    model.TotalLiabilities2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalLiabilities && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;



                    model.TotalAssets  = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalAssets && a.QualificationYearId == (int)Enums.QualificationYear.CurrentYear).FirstOrDefault().SupplierValue;
                    model.TotalAssets1 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalAssets && a.QualificationYearId == (int)Enums.QualificationYear.SecondYear).FirstOrDefault().SupplierValue;
                    model.TotalAssets2 = model.lstQualificationSupplierDataYearlyViewModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.TotalAssets && a.QualificationYearId == (int)Enums.QualificationYear.ThirdYear).FirstOrDefault().SupplierValue;
                }
            }

            return(model);
        }
        private async Task <PreQualificationApplyDocumentsModel> PrepareQualificationData(PreQualificationApplyDocumentsModel model, List <QualificationSupplierDataModel> lstQualificationSupplierDataModel)
        {
            model.lstQualificationSupplierTechDataModel       = lstQualificationSupplierDataModel.Where(l => l.QualificationCategoryId == (int)Enums.QualificationItemCategory.Technical).ToList();
            model.lstQualificationSupplierFinancialDataModel  = lstQualificationSupplierDataModel.Where(l => l.QualificationCategoryId == (int)Enums.QualificationItemCategory.Financial).ToList();
            model.lstQualificationSupplierDataYearlyViewModel = lstQualificationSupplierDataModel.FirstOrDefault().lstQualificationSupplierDataYearlyViewModel;
            model.lstQualificationSupplierProjectModel        = lstQualificationSupplierDataModel.FirstOrDefault().lstQualificationSupplierProjectModel;

            // bind data
            model = await bindFinancialPropertyAsync(model);

            model.FileReferenceForQualityAssuranceStandards          = model.lstQualificationSupplierTechDataModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.QualityAssuranceStandards).FirstOrDefault()?.FileReferenceForQualityAssuranceStandards;
            model.FileReferenceForEnvironmentalHealthSafetyStandards = model.lstQualificationSupplierTechDataModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.EnvironmentalHealthSafetyStandards).FirstOrDefault()?.FileReferenceForEnvironmentalHealthSafetyStandards;
            model.FileReferenceForInsurance = model.lstQualificationSupplierTechDataModel.Where(a => a.QualificationItemId == (int)Enums.QualificationEvaluationItems.InsuranceOfGeneralCommercialResponsibility ||
                                                                                                a.QualificationItemId == (int)Enums.QualificationEvaluationItems.InsuranceOfProfessionalCompensation ||
                                                                                                a.QualificationItemId == (int)Enums.QualificationEvaluationItems.LiabilityInsurance).FirstOrDefault()?.FileReferenceForInsurance;



            if (lstQualificationSupplierDataModel != null && lstQualificationSupplierDataModel.Count > 0)
            {
                model.QualificationTypeId   = lstQualificationSupplierDataModel.FirstOrDefault().QualificationTypeId;
                model.QualificationStatusId = lstQualificationSupplierDataModel.FirstOrDefault().QualificationStatusId;
                model.SupplierId            = lstQualificationSupplierDataModel.FirstOrDefault().SupplierSelectedCr;
                model.OfferCheckingDate     = lstQualificationSupplierDataModel.FirstOrDefault().OfferCheckingDate != null?lstQualificationSupplierDataModel.FirstOrDefault().OfferCheckingDate : null;

                model.OffersCheckingDateHijri = lstQualificationSupplierDataModel.FirstOrDefault().OffersCheckingDateHijri;
            }

            return(model);
        }