Ejemplo n.º 1
0
 private void SaveSeries(int productId, List <OBKContractSeriesViewModel> list)
 {
     if (list != null && list.Count > 0)
     {
         foreach (OBKContractSeriesViewModel item in list)
         {
             OBK_Procunts_Series newSerie = new OBK_Procunts_Series();
             newSerie.Series            = item.Series;
             newSerie.SeriesEndDate     = item.CreateDate;
             newSerie.SeriesStartdate   = item.ExpireDate;
             newSerie.SeriesParty       = item.Part;
             newSerie.SeriesMeasureId   = item.UnitId;
             newSerie.OBK_RS_ProductsId = productId;
             AppContext.OBK_Procunts_Series.Add(newSerie);
             AppContext.SaveChanges();
         }
     }
 }
Ejemplo n.º 2
0
        public virtual ActionResult GetContract(Guid id)
        {
            var contract = new SafetyAssessmentRepository().GetContractById(id);

            if (contract == null)
            {
                return(Json(new { isSuccess = false }));
            }
            var products = new SafetyAssessmentRepository().GetRsProductsAndSeries(contract.Id);

            var result = new OBK_AssessmentDeclaration();

            var resultProducts = new List <OBK_RS_Products>();

            foreach (var product in products)
            {
                var prod = new OBK_RS_Products();
                prod.Id                 = product.Id;
                prod.NameRu             = product.NameRu;
                prod.NameKz             = product.NameKz;
                prod.ProducerNameRu     = product.ProducerNameRu;
                prod.ProducerNameKz     = product.ProducerNameKz;
                prod.CountryNameRu      = product.CountryNameRu;
                prod.CountryNameKZ      = product.CountryNameKZ;
                prod.DrugFormFullName   = product.DrugFormFullName;
                prod.DrugFormFullNameKz = product.DrugFormFullNameKz;
                prod.DrugFormBoxCount   = product.DrugFormBoxCount;
                //prod.TnvedCode = product.TnvedCode;
                //prod.KpvedCode = product.KpvedCode;
                prod.CurrencyId     = product.CurrencyId;
                prod.Price          = product.Price;
                prod.RegTypeId      = product.RegTypeId;
                prod.RegNumber      = product.RegNumber;
                prod.RegisterId     = product.RegisterId;
                prod.RegNumberKz    = product.RegNumberKz;
                prod.RegDate        = product.RegDate;
                prod.ExpirationDate = product.ExpirationDate;
                prod.NdName         = product.NdName;
                prod.NdNumber       = product.NdNumber;
                prod.Dimension      = product.Dimension;
                prod.ExpertisePlace = product.ExpertisePlace;
                foreach (var productSeries in product.OBK_Procunts_Series)
                {
                    var prodSeries = new OBK_Procunts_Series();
                    prodSeries.Id                = productSeries.Id;
                    prodSeries.Series            = productSeries.Series;
                    prodSeries.SeriesStartdate   = productSeries.SeriesStartdate;
                    prodSeries.SeriesEndDate     = productSeries.SeriesEndDate;
                    prodSeries.SeriesParty       = productSeries.SeriesParty;
                    prodSeries.SeriesShortNameRu = productSeries.sr_measures.short_name;
                    var obkStageExpDocumentSeries = new SafetyAssessmentRepository().GetStageExpDocument(prodSeries.Id);
                    if (obkStageExpDocumentSeries != null)
                    {
                        prodSeries.ExpId           = obkStageExpDocumentSeries.Id;
                        prodSeries.ProductSeriesId = obkStageExpDocumentSeries.ProductSeriesId;
                        prodSeries.ExpResult       = obkStageExpDocumentSeries.ExpResult ? "True" : "False";
                        prodSeries.ExpResultTitle  = obkStageExpDocumentSeries.ExpResult
                            ? "Соответствует требованиям"
                            : "Не соответствует требованиям";
                        prodSeries.ExpStartDate         = string.Format("{0:dd.MM.yyyy}", obkStageExpDocumentSeries.ExpStartDate);
                        prodSeries.ExpEndDate           = string.Format("{0:dd.MM.yyyy}", obkStageExpDocumentSeries.ExpEndDate);
                        prodSeries.ExpReasonNameRu      = obkStageExpDocumentSeries.ExpReasonNameRu;
                        prodSeries.ExpReasonNameKz      = obkStageExpDocumentSeries.ExpReasonNameKz;
                        prodSeries.ExpProductNameRu     = obkStageExpDocumentSeries.ExpProductNameRu;
                        prodSeries.ExpProductNameKz     = obkStageExpDocumentSeries.ExpProductNameKz;
                        prodSeries.ExpNomenclatureRu    = obkStageExpDocumentSeries.ExpNomenclatureRu;
                        prodSeries.ExpNomenclatureKz    = obkStageExpDocumentSeries.ExpNomenclatureKz;
                        prodSeries.ExpAddInfoRu         = obkStageExpDocumentSeries.ExpAddInfoRu;
                        prodSeries.ExpAddInfoKz         = obkStageExpDocumentSeries.ExpAddInfoKz;
                        prodSeries.ExpConclusionNumber  = obkStageExpDocumentSeries.ExpConclusionNumber;
                        prodSeries.ExpBlankNumber       = obkStageExpDocumentSeries.ExpBlankNumber;
                        prodSeries.ExpApplication       = obkStageExpDocumentSeries.ExpApplication;
                        prodSeries.ExpApplicationNumber = obkStageExpDocumentSeries.ExpApplicationNumber;
                    }
                    prod.OBK_Procunts_Series.Add(prodSeries);
                }
                foreach (var mtPart in product.OBK_MtPart)
                {
                    var mtParts = new OBK_MtPart();
                    mtParts.PartNumber    = mtPart.PartNumber;
                    mtParts.Model         = mtPart.Model;
                    mtParts.Specification = mtPart.Specification;
                    mtParts.ProducerName  = mtPart.ProducerName;
                    mtParts.CountryName   = mtPart.CountryName;
                    mtParts.Name          = mtPart.Name;
                    prod.OBK_MtPart.Add(mtParts);
                }
                resultProducts.Add(prod);
            }
            result.ObkRsProductses = resultProducts;
            return(Json(new { isSuccess = true, result }));
        }
Ejemplo n.º 3
0
        private void FillDeclarationControl(OBK_AssessmentDeclaration model)
        {
            var safetyRepository = new SafetyAssessmentRepository();

            ViewData["ContractList"] =
                new SelectList(safetyRepository.GetActiveContractListWithInfo(model.EmployeeId, model.Type_Id), "Id",
                               "ContractInfo", model.Contract_Id);

            if (model.Type_Id == int.Parse(CodeConstManager.OBK_SA_SERIAL))
            {
                ViewData["TypeList"] = new SelectList(safetyRepository.GetObkRefTypes(), "Id", "NameRu", model.Type_Id = safetyRepository.GetObkRefTypes(CodeConstManager.OBK_SA_SERIAL).Id);
            }
            if (model.Type_Id == int.Parse(CodeConstManager.OBK_SA_PARTY))
            {
                ViewData["TypeList"] = new SelectList(safetyRepository.GetObkRefTypes(), "Id", "NameRu", model.Type_Id = safetyRepository.GetObkRefTypes(CodeConstManager.OBK_SA_PARTY).Id);
            }
            if (model.Type_Id == int.Parse(CodeConstManager.OBK_SA_DECLARATION))
            {
                ViewData["TypeList"] = new SelectList(safetyRepository.GetObkRefTypes(), "Id", "NameRu", model.Type_Id = safetyRepository.GetObkRefTypes(CodeConstManager.OBK_SA_DECLARATION).Id);
            }

            if (model.Contract_Id != null)
            {
                var contract         = safetyRepository.GetContractById(model.Contract_Id);
                var declarant        = safetyRepository.GetDeclarantById(contract.DeclarantId);
                var declarantContact = safetyRepository.GetDeclarantContactById(contract.DeclarantContactId);
                var products         = safetyRepository.GetRsProductsAndSeries(contract.Id);

                //справочник стран
                var countries = safetyRepository.GetCounties();
                if (declarant?.CountryId == null)
                {
                    ViewData["Counties"] = new SelectList(countries, "Id", "Name");
                }
                else
                {
                    ViewData["Counties"] = new SelectList(countries, "Id", "Name",
                                                          model.CountryId = declarant.CountryId);
                }

                //Валюта
                var currency = safetyRepository.GetObkCurrencies();
                if (declarantContact?.CurrencyId == null)
                {
                    ViewData["Courrency"] = new SelectList(currency, "Id", "Name");
                }
                else
                {
                    ViewData["Courrency"] = new SelectList(currency, "Id", "Name",
                                                           model.CurrencyId = declarantContact.CurrencyId);
                }

                //Наличие сертификата GMP
                var repository = new ReadOnlyDictionaryRepository();
                var booleans   = repository.GetCertificateGMPCheck();
                ViewData["IsGMPList"] = new SelectList(booleans, "CertificateGMPCheck", "NameRu",
                                                       model.CertificateGMPCheck);

                var certType = safetyRepository.GetCertificateType();
                if (model.CertificateTypeId == null)
                {
                    ViewData["CertificateType"] = new SelectList(certType, "Id", "NameRu");
                }
                else
                {
                    ViewData["CertificateType"] = new SelectList(certType, "Id", "NameRu", model.CertificateTypeId);
                }

                //организационная форма
                var orgForm = safetyRepository.GetOrganizationForm();
                if (declarant?.OrganizationFormId == null)
                {
                    ViewData["OrganizationForm"] = new SelectList(orgForm, "Id", "Name");
                }
                else
                {
                    ViewData["OrganizationForm"] = new SelectList(orgForm, "Id", "Name",
                                                                  model.OrganizationFormId = declarant.OrganizationFormId);
                }

                model.StartDate       = string.Format("{0:dd.MM.yyyy}", contract.StartDate);
                model.EndDate         = string.Format("{0:dd.MM.yyyy}", contract.EndDate);
                model.NameKz          = declarant?.NameKz ?? "нет данных";
                model.NameRu          = declarant?.NameRu ?? "нет данных";
                model.NameEn          = declarant?.NameEn ?? "нет данных";
                model.ChiefLastName   = declarantContact?.BossLastName ?? "нет данных";
                model.ChiefFirstName  = declarantContact?.BossFirstName ?? "нет данных";
                model.ChiefMiddleName = declarantContact?.BossMiddleName ?? "нет данных";
                model.ChiefPosition   = declarantContact?.BossPosition ?? "нет данных";
                model.AddressFact     = declarantContact?.AddressFact ?? "нет данных";
                model.AddressLegal    = declarantContact?.AddressLegalRu ?? "нет данных";
                model.Phone           = declarantContact?.Phone ?? "нет данных";
                model.Email           = declarantContact?.Email ?? "нет данных";
                model.BankBik         = declarantContact?.BankBik ?? "нет данных";
                model.BankIik         = declarantContact?.BankIik ?? "нет данных";
                model.BankName        = declarantContact?.BankNameRu ?? "нет данных";

                var resultProducts = new List <OBK_RS_Products>();
                foreach (var product in products)
                {
                    var prod = new OBK_RS_Products();
                    prod.Id             = product.Id;
                    prod.NameRu         = product.NameRu;
                    prod.NameKz         = product.NameKz;
                    prod.ProducerNameRu = product.ProducerNameRu;
                    prod.ProducerNameKz = product.ProducerNameKz;
                    prod.CountryNameRu  = product.CountryNameRu;
                    prod.CountryNameKZ  = product.CountryNameKZ;
                    prod.TnvedCode      = product.TnvedCode;
                    prod.KpvedCode      = product.KpvedCode;
                    prod.Price          = product.Price;
                    foreach (var productSeries in product.OBK_Procunts_Series)
                    {
                        var prodSeries = new OBK_Procunts_Series();
                        prodSeries.Id                = productSeries.Id;
                        prodSeries.Series            = productSeries.Series;
                        prodSeries.SeriesStartdate   = productSeries.SeriesStartdate;
                        prodSeries.SeriesEndDate     = productSeries.SeriesEndDate;
                        prodSeries.SeriesParty       = productSeries.SeriesParty;
                        prodSeries.SeriesShortNameRu = productSeries.sr_measures.short_name;
                        prod.OBK_Procunts_Series.Add(prodSeries);
                    }
                    resultProducts.Add(prod);
                }
                model.ObkRsProductses = resultProducts;
            }
            else
            {
                var countries = safetyRepository.GetCounties();
                ViewData["Counties"] = new SelectList(countries, "Id", "Name");

                //Валюта
                var currency = safetyRepository.GetObkCurrencies();
                ViewData["Courrency"] = new SelectList(currency, "Id", "Name");

                var repository = new ReadOnlyDictionaryRepository();
                //Наличие сертификата GMP
                var booleans = repository.GetCertificateGMPCheck();
                ViewData["IsGMPList"] = new SelectList(booleans, "CertificateGMPCheck", "NameRu",
                                                       model.CertificateGMPCheck);

                var certType = safetyRepository.GetCertificateType();
                ViewData["CertificateType"] = new SelectList(certType, "Id", "NameRu");

                //организационная форма
                var orgForm = safetyRepository.GetOrganizationForm();
                ViewData["OrganizationForm"] = new SelectList(orgForm, "Id", "Name");
            }
        }
Ejemplo n.º 4
0
        public virtual ActionResult GetContract(Guid id)
        {
            var contract = new SafetyAssessmentRepository().GetContractById(id);

            if (contract == null)
            {
                return(Json(new { isSuccess = false }));
            }

            var declarant        = new SafetyAssessmentRepository().GetDeclarantById(contract.DeclarantId);
            var declarantContact = new SafetyAssessmentRepository().GetDeclarantContactById(contract.DeclarantContactId);
            var products         = new SafetyAssessmentRepository().GetRsProductsAndSeries(contract.Id);

            var result = new OBK_AssessmentDeclaration();

            result.StartDate          = string.Format("{0:dd.MM.yyyy}", contract.StartDate);
            result.EndDate            = string.Format("{0:dd.MM.yyyy}", contract.EndDate);
            result.OrganizationFormId = declarant?.OrganizationFormId ?? null;
            result.NameKz             = declarant?.NameKz ?? "нет данных";
            result.NameRu             = declarant?.NameRu ?? "нет данных";
            result.NameEn             = declarant?.NameEn ?? "нет данных";
            result.ChiefLastName      = declarantContact?.BossLastName ?? "нет данных";
            result.ChiefFirstName     = declarantContact?.BossFirstName ?? "нет данных";
            result.ChiefMiddleName    = declarantContact?.BossMiddleName ?? "нет данных";
            result.ChiefPosition      = declarantContact?.BossPosition ?? "нет данных";
            result.AddressFact        = declarantContact?.AddressFact ?? "нет данных";
            result.AddressLegal       = declarantContact?.AddressLegalRu ?? "нет данных";
            result.Phone      = declarantContact?.Phone ?? "нет данных";
            result.Email      = declarantContact?.Email ?? "нет данных";
            result.BankBik    = declarantContact?.BankBik ?? "нет данных";
            result.BankIik    = declarantContact?.BankIik ?? "нет данных";
            result.BankName   = declarantContact?.BankNameRu ?? "нет данных";
            result.CountryId  = declarant?.CountryId ?? null;
            result.CurrencyId = declarantContact?.CurrencyId ?? null;

            var resultProducts = new List <OBK_RS_Products>();

            foreach (var product in products)
            {
                var prod = new OBK_RS_Products();
                prod.Id               = product.Id;
                prod.NameRu           = product.NameRu;
                prod.NameKz           = product.NameKz;
                prod.ProducerNameRu   = product.ProducerNameRu;
                prod.ProducerNameKz   = product.ProducerNameKz;
                prod.CountryNameRu    = product.CountryNameRu;
                prod.CountryNameKZ    = product.CountryNameKZ;
                prod.TnvedCode        = product.TnvedCode;
                prod.KpvedCode        = product.KpvedCode;
                prod.Price            = product.Price;
                prod.CurrencyId       = product.CurrencyId;
                prod.DrugFormBoxCount = product.DrugFormBoxCount;
                prod.DrugFormFullName = product.DrugFormFullName;
                prod.RegTypeId        = product.RegTypeId;
                foreach (var productSeries in product.OBK_Procunts_Series)
                {
                    var prodSeries = new OBK_Procunts_Series();
                    prodSeries.Id                = productSeries.Id;
                    prodSeries.Series            = productSeries.Series;
                    prodSeries.SeriesStartdate   = productSeries.SeriesStartdate;
                    prodSeries.SeriesEndDate     = productSeries.SeriesEndDate;
                    prodSeries.SeriesParty       = productSeries.SeriesParty;
                    prodSeries.SeriesShortNameRu = productSeries.sr_measures.short_name;
                    prod.OBK_Procunts_Series.Add(prodSeries);
                }
                foreach (var mtPart in product.OBK_MtPart)
                {
                    var mtParts = new OBK_MtPart();
                    mtParts.PartNumber    = mtPart.PartNumber;
                    mtParts.Model         = mtPart.Model;
                    mtParts.Specification = mtPart.Specification;
                    mtParts.ProducerName  = mtPart.ProducerName;
                    mtParts.CountryName   = mtPart.CountryName;
                    mtParts.Name          = mtPart.Name;
                    prod.OBK_MtPart.Add(mtParts);
                }
                resultProducts.Add(prod);
            }
            result.ObkRsProductses = resultProducts;
            return(Json(new { isSuccess = true, result }));
        }
Ejemplo n.º 5
0
        public virtual ActionResult GetProducts(Guid id)
        {
            var declarant = expRepo.GetAssessmentDeclaration(id);

            if (declarant == null)
            {
                return(Json(new { isSuccess = false }));
            }

            //есть ли результат
            var obkStageExpDocumentResult = new SafetyAssessmentRepository().GetStageExpDocumentResult(declarant.Id);

            if (obkStageExpDocumentResult != null)
            {
                // если результат положительный
                if (obkStageExpDocumentResult.ExpResult)
                {
                    var results = new List <OBK_Procunts_Series>();
                    foreach (var product in declarant.OBK_Contract.OBK_RS_Products)
                    {
                        foreach (var productSeries in product.OBK_Procunts_Series)
                        {
                            var series = new OBK_Procunts_Series();
                            series.Id              = productSeries.Id;
                            series.Series          = productSeries.Series;
                            series.SeriesStartdate = productSeries.SeriesStartdate;
                            DateTime endDate       = new DateTime();
                            var      validDate     = DateTime.TryParse(productSeries.SeriesEndDate, out endDate);
                            var      endDateString = productSeries.SeriesEndDate;
                            if (validDate == true)
                            {
                                endDate       = endDate.AddMonths(1);
                                endDateString = endDate.ToString("dd.MM.yyyy");
                            }
                            series.SeriesEndDate     = endDateString;
                            series.SeriesParty       = productSeries.SeriesParty;
                            series.SeriesShortNameRu = productSeries.sr_measures.short_name;
                            series.SeriesNameRu      = productSeries.Series + ", годен до " + endDateString +
                                                       ", партия " + productSeries.SeriesParty + " " +
                                                       productSeries.SeriesShortNameRu;

                            series.NameRu         = product.NameRu;
                            series.NameKz         = product.NameKz;
                            series.ProducerNameRu = product.ProducerNameRu;
                            series.ProducerNameKz = product.ProducerNameKz;
                            series.CountryNameRu  = product.CountryNameRu;
                            series.CountryNameKz  = product.CountryNameKZ;

                            var obkStageExpDocumentSeries =
                                new SafetyAssessmentRepository().GetStageExpDocument(productSeries.Id);
                            if (obkStageExpDocumentSeries != null)
                            {
                                series.ExpId           = obkStageExpDocumentSeries.Id;
                                series.ProductSeriesId = obkStageExpDocumentSeries.ProductSeriesId;
                                series.ExpResult       = obkStageExpDocumentSeries.ExpResult ? "True" : "False";
                                series.ExpResultTitle  = obkStageExpDocumentSeries.ExpResult
                                    ? "Соответствует требованиям"
                                    : "Не соответствует требованиям";
                                series.ExpStartDate =
                                    string.Format("{0:dd.MM.yyyy}", obkStageExpDocumentSeries.ExpStartDate);
                                series.ExpEndDate            = endDateString;
                                series.ExpReasonNameRu       = obkStageExpDocumentSeries.ExpReasonNameRu;
                                series.ExpReasonNameKz       = obkStageExpDocumentSeries.ExpReasonNameKz;
                                series.ExpProductNameRu      = obkStageExpDocumentSeries.ExpProductNameRu;
                                series.ExpProductNameKz      = obkStageExpDocumentSeries.ExpProductNameKz;
                                series.ExpProductShortNameRu = obkStageExpDocumentSeries.ExpProductShortNameRu;
                                series.ExpProductShortNameKz = obkStageExpDocumentSeries.ExpProductShortNameKz;
                                series.ExpNomenclatureRu     = obkStageExpDocumentSeries.ExpNomenclatureRu;
                                series.ExpNomenclatureKz     = obkStageExpDocumentSeries.ExpNomenclatureKz;
                                series.ExpAddInfoRu          = assessmentRepo.FormExpAdditionalInfo(declarant);
                                series.ExpAddInfoKz          = assessmentRepo.FormExpAdditionalInfo(declarant, true);
                                series.ExpConclusionNumber   = obkStageExpDocumentSeries.ExpConclusionNumber;
                                series.ExpBlankNumber        = obkStageExpDocumentSeries.ExpBlankNumber;
                                series.ExpApplication        = obkStageExpDocumentSeries.ExpApplication;
                                series.ExpApplicationNumber  = obkStageExpDocumentSeries.ExpApplicationNumber;
                            }
                            else
                            {
                                series.ExpConclusionNumber = expRepo.GenerateNumber(id, productSeries.Id);
                            }
                            results.Add(series);
                        }
                    }
                    return(Json(new { isSuccess = true, results }));
                }
                else
                {
                    var obkStageExpDocumentSeries =
                        new SafetyAssessmentRepository().GetStageExpDocument(declarant.Id);
                    if (obkStageExpDocumentSeries != null)
                    {
                        var series = new OBK_Procunts_Series();
                        series.ExpId           = obkStageExpDocumentSeries.Id;
                        series.ProductSeriesId = obkStageExpDocumentSeries.ProductSeriesId;
                        series.ExpResult       = obkStageExpDocumentSeries.ExpResult ? "True" : "False";
                        series.ExpResultTitle  = obkStageExpDocumentSeries.ExpResult
                            ? "Соответствует требованиям"
                            : "Не соответствует требованиям";
                        series.ExpStartDate =
                            string.Format("{0:dd.MM.yyyy}", obkStageExpDocumentSeries.ExpStartDate);
                        series.ExpEndDate =
                            string.Format("{0:dd.MM.yyyy}", obkStageExpDocumentSeries.ExpEndDate);
                        series.ExpReasonNameRu      = obkStageExpDocumentSeries.ExpReasonNameRu;
                        series.ExpReasonNameKz      = obkStageExpDocumentSeries.ExpReasonNameKz;
                        series.ExpProductNameRu     = obkStageExpDocumentSeries.ExpProductNameRu;
                        series.ExpProductNameKz     = obkStageExpDocumentSeries.ExpProductNameKz;
                        series.ExpNomenclatureRu    = obkStageExpDocumentSeries.ExpNomenclatureRu;
                        series.ExpNomenclatureKz    = obkStageExpDocumentSeries.ExpNomenclatureKz;
                        series.ExpAddInfoRu         = obkStageExpDocumentSeries.ExpAddInfoRu;
                        series.ExpAddInfoKz         = obkStageExpDocumentSeries.ExpAddInfoKz;
                        series.ExpConclusionNumber  = obkStageExpDocumentSeries.ExpConclusionNumber;
                        series.ExpBlankNumber       = obkStageExpDocumentSeries.ExpBlankNumber;
                        series.ExpApplication       = obkStageExpDocumentSeries.ExpApplication;
                        series.ExpApplicationNumber = obkStageExpDocumentSeries.ExpApplicationNumber;

                        return(Json(new { isSuccess = true, series }));
                    }
                    return(Json(new { isSuccess = true }));
                }
            }
            return(Json(new { isSuccess = true }));
        }